温馨提示×

debian lamp怎样部署网站

小樊
41
2026-10-22 07:56:36
栏目: 云计算

在 Debian 上部署 LAMP(Linux + Apache + MySQL/MariaDB + PHP)并上线一个网站,通常按下面步骤来做即可。以下以 Debian 11/12 为例。


一、安装 LAMP 环境

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 Apache

sudo apt install apache2 -y

启动并设置开机自启:

sudo systemctl enable --now apache2

浏览器访问服务器 IP,看到 Apache 默认页即成功。


3. 安装 MariaDB(或 MySQL)

sudo apt install mariadb-server -y

初始化安全设置:

sudo mysql_secure_installation

登录数据库:

sudo mysql -u root -p

创建网站数据库和用户(示例):

CREATE DATABASE mydb CHARACTER SET utf8mb4;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

4. 安装 PHP

sudo apt install php libapache2-mod-php php-mysql -y

测试 PHP:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

访问:http://服务器IP/info.php


二、部署网站

1. 创建网站目录

sudo mkdir -p /var/www/mywebsite
sudo chown -R www-data:www-data /var/www/mywebsite

将网站文件放入该目录(如使用 FTP / SCP / Git)。


2. 配置 Apache 虚拟主机

新建配置文件:

sudo nano /etc/apache2/sites-available/mywebsite.conf

示例配置:

<VirtualHost *:80>
    ServerName www.example.com
    DocumentRoot /var/www/mywebsite

    <Directory /var/www/mywebsite>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

启用站点:

sudo a2ensite mywebsite.conf
sudo a2dissite 000-default.conf
sudo systemctl reload apache2

3. (可选)开启伪静态

sudo a2enmod rewrite
sudo systemctl restart apache2

三、域名与防火墙

1. 域名解析

将域名 A 记录指向服务器公网 IP。

2. 防火墙(如有)

sudo ufw allow 80
sudo ufw allow 443

四、(推荐)配置 HTTPS

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d www.example.com

五、常见问题

  • 403 Forbidden:目录权限或 Require all granted 没配置
  • PHP 不解析:确认 libapache2-mod-php 已安装并重启 Apache
  • 数据库连不上:确认用户权限和 localhost 限制

如果你能说明:

  • 是 纯静态 / PHP 项目 / WordPress / 框架(Laravel 等)
  • Debian 版本
  • 是否用域名

我可以给你更精确的部署方案。

0 踩