Linux LNMP配置虚拟主机步骤如下(以Debian/Ubuntu为例):
安装基础软件
sudo apt update
sudo apt install nginx mysql-server php-fpm php-mysql
配置MySQL/MariaDB
登录MySQL后创建数据库和用户:
CREATE DATABASE your_db;
CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_db.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
配置Nginx虚拟主机
sudo nano /etc/nginx/sites-available/yourdomain.com
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/yourdomain.com;
index index.php index.html;
location / { try_files $uri $uri/ =404; }
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht { deny all; }
}
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
创建网站目录与测试文件
sudo mkdir -p /var/www/yourdomain.com
sudo chown -R www-data:www-data /var/www/yourdomain.com
echo "<?php phpinfo(); ?>" | sudo tee /var/www/yourdomain.com/index.php
配置SSL(可选)
使用Let’s Encrypt免费证书:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
说明:
/etc/nginx/sites-available/
和/etc/nginx/sites-enabled/
管理虚拟主机配置。listen 443 ssl
等参数。