温馨提示×

如何用LNMP部署网站

小樊
43
2025-09-08 07:34:04
栏目: 云计算

以下是使用LNMP部署网站的核心步骤,分为环境搭建和网站部署两部分:

一、LNMP环境搭建

  1. 安装Linux系统
    推荐使用Ubuntu、CentOS等发行版,确保系统已更新:

    # Ubuntu/Debian  
    sudo apt update && sudo apt upgrade -y  
    # CentOS  
    sudo yum update -y  
    
  2. 安装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默认页面。

  3. 安装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  
    
  4. 安装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信息。

二、部署网站

  1. 静态网站部署

    • 创建网站目录
      sudo mkdir -p /var/www/yourdomain.com  
      sudo chown -R www-data:www-data /var/www/yourdomain.com  # 设置权限  
      
    • 上传文件:将HTML/CSS/JS等文件上传至该目录。
    • 配置Nginx虚拟主机(可选):
      编辑 /etc/nginx/sites-available/yourdomain.com,指定 root 为网站目录,启用后重载Nginx。
  2. 动态网站部署(如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;  
      
    • 上传网站文件:将动态网站文件(如WordPress压缩包解压后)放入网站根目录。
    • 配置数据库连接:编辑网站配置文件(如 wp-config.php),填写数据库名、用户名、密码。
  3. 配置SSL(可选)
    使用Let’s Encrypt免费证书:

    sudo apt install certbot python3-certbot-nginx  # Ubuntu/Debian  
    sudo certbot --nginx -d yourdomain.com  
    

    按提示完成配置,自动重载Nginx。

三、注意事项

  • 防火墙:确保开放HTTP(80)和HTTPS(443)端口:
    sudo ufw allow 80/443  # Ubuntu  
    sudo firewall-cmd --add-service=http --add-service=https --permanent  # CentOS  
    
  • 权限管理:网站目录权限建议设置为 755,文件权限为 644,避免使用root用户运行服务。
  • 版本适配:不同Linux发行版的软件包名称和路径可能略有差异,需根据实际调整(如CentOS使用 yum,Ubuntu使用 apt)。

完成以上步骤后,即可通过域名或IP访问部署的网站。如需进一步优化,可调整Nginx缓存、压缩等配置。

0