以下是使用LNMP部署网站的核心步骤,分为环境搭建和网站部署两部分:
安装Linux系统
推荐使用Ubuntu、CentOS等发行版,确保系统已更新:
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS
sudo yum update -y
安装Nginx
# Ubuntu/Debian
sudo apt install nginx
# CentOS
sudo yum install epel-release && sudo yum install nginx
启动服务并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
验证安装:访问 http://服务器IP,查看Nginx默认页面。
安装MySQL数据库
# Ubuntu/Debian
sudo apt install mysql-server
# CentOS
sudo yum install mariadb-server
运行安全脚本配置密码及权限:
sudo mysql_secure_installation
启动服务并设置开机自启:
sudo systemctl start mysql
sudo systemctl enable mysql
安装PHP及扩展
# Ubuntu/Debian
sudo apt install php-fpm php-mysql php-xml php-curl
# CentOS
sudo yum install php php-fpm php-mysql
编辑Nginx配置文件(如 /etc/nginx/sites-available/default),在 location ~ \.php$ 块中添加:
fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据实际PHP版本调整
include fastcgi_params;
重启Nginx生效:
sudo systemctl reload nginx
验证PHP:在网站根目录创建 info.php,内容为 <?php phpinfo(); ?>,访问 http://服务器IP/info.php 查看PHP信息。
静态网站部署
sudo mkdir -p /var/www/yourdomain.com
sudo chown -R www-data:www-data /var/www/yourdomain.com # 设置权限
/etc/nginx/sites-available/yourdomain.com,指定 root 为网站目录,启用后重载Nginx。动态网站部署(如WordPress)
sudo mysql -u root -p
CREATE DATABASE wordpress;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY '密码';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
wp-config.php),填写数据库名、用户名、密码。配置SSL(可选)
使用Let’s Encrypt免费证书:
sudo apt install certbot python3-certbot-nginx # Ubuntu/Debian
sudo certbot --nginx -d yourdomain.com
按提示完成配置,自动重载Nginx。
sudo ufw allow 80/443 # Ubuntu
sudo firewall-cmd --add-service=http --add-service=https --permanent # CentOS
755,文件权限为 644,避免使用root用户运行服务。yum,Ubuntu使用 apt)。完成以上步骤后,即可通过域名或IP访问部署的网站。如需进一步优化,可调整Nginx缓存、压缩等配置。