在Debian上配置LNMP(Linux, Nginx, MySQL/MariaDB, PHP)多站点环境需要一些步骤。以下是一个基本的指南,帮助你在Debian系统上设置多个网站。
1. 安装必要的软件包
首先,更新你的包列表并安装Nginx、MySQL/MariaDB和PHP:
sudo apt update sudo apt install nginx mysql-server php-fpm php-mysql
在安装过程中,系统会提示你设置MySQL的root密码。
2. 配置MySQL/MariaDB
登录到MySQL/MariaDB并创建数据库和用户:
sudo mysql -u root -p
在MySQL shell中,创建数据库和用户:
CREATE DATABASE site1; CREATE USER 'site1user'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON site1.* TO 'site1user'@'localhost'; FLUSH PRIVILEGES; EXIT;
重复上述步骤为其他站点创建数据库和用户。
3. 配置Nginx
为每个站点创建一个Nginx配置文件。假设你要为两个站点site1.com
和site2.com
配置:
站点1配置 (/etc/nginx/sites-available/site1.com
)
server { listen 80; server_name site1.com www.site1.com; root /var/www/site1; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
站点2配置 (/etc/nginx/sites-available/site2.com
)
server { listen 80; server_name site2.com www.site2.com; root /var/www/site2; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
创建符号链接以启用这些站点:
sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/ sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/
测试Nginx配置并重启服务:
sudo nginx -t sudo systemctl restart nginx
4. 配置PHP-FPM
编辑PHP-FPM配置文件以使用Unix套接字:
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
找到以下行并取消注释:
;listen = /run/php/php7.4-fpm.sock listen = /var/run/php/php7.4-fpm.sock
重启PHP-FPM服务:
sudo systemctl restart php7.4-fpm
5. 创建网站目录并设置权限
为每个站点创建一个目录并设置适当的权限:
sudo mkdir -p /var/www/site1 sudo chown -R www-data:www-data /var/www/site1 sudo chmod -R 755 /var/www/site1 sudo mkdir -p /var/www/site2 sudo chown -R www-data:www-data /var/www/site2 sudo chmod -R 755 /var/www/site2
6. 配置DNS
确保你的域名(如site1.com
和site2.com
)指向你的服务器IP地址。你可以在你的DNS提供商的控制面板中进行配置。
7. 测试配置
在浏览器中访问site1.com
和site2.com
,确保它们都能正确显示。
通过以上步骤,你应该能够在Debian上成功配置LNMP多站点环境。根据你的具体需求,可能需要进行一些额外的配置和调整。