Linux云服务器LNMP环境搭建全攻略
LNMP(Linux + Nginx + MySQL + PHP)是当前最流行的Web服务器环境之一。本文将详细介绍如何在Linux云服务器上从零开始搭建LNMP环境,包括软件安装、配置优化以及常见问题解决方法。
一、准备工作
在开始之前,请确保您已经:
- 购买并登录到Linux云服务器(推荐使用CentOS 7/8或Ubuntu 20.04)
- 获取root权限或具有sudo权限的账户
- 更新系统软件包:
sudo yum update -y(CentOS)或sudo apt update && sudo apt upgrade -y(Ubuntu)
二、Nginx安装与配置
1. 安装Nginx
CentOS系统:
sudo yum install epel-release -y
sudo yum install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
Ubuntu系统:
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
2. 基础配置
编辑主配置文件:sudo vi /etc/nginx/nginx.conf
建议修改以下参数:
worker_processes auto; # 自动设置工作进程数
worker_connections 1024; # 每个工作进程的最大连接数
keepalive_timeout 65;
gzip on; # 开启gzip压缩
三、MySQL/MariaDB安装
1. 安装数据库
CentOS 7/8:
sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
Ubuntu:
sudo apt install mysql-server -y
sudo systemctl start mysql
sudo systemctl enable mysql
2. 安全配置
运行安全脚本:sudo mysql_secure_installation
按照提示设置root密码、移除匿名用户、禁止root远程登录等。
四、PHP安装与配置
1. 安装PHP
CentOS:
sudo yum install epel-release -y
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
sudo yum install yum-utils -y
sudo yum-config-manager --enable remi-php74
sudo yum install php php-fpm php-mysqlnd php-opcache php-gd php-xml php-mbstring -y
Ubuntu:
sudo apt install php-fpm php-mysql php-mbstring php-xml php-gd -y
2. 配置PHP-FPM
编辑配置文件:sudo vi /etc/php-fpm.d/www.conf(CentOS)或sudo vi /etc/php/7.4/fpm/pool.d/www.conf(Ubuntu)
修改以下参数:
user = nginx
group = nginx
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
五、整合Nginx与PHP
创建Nginx服务器块配置:sudo vi /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name your_domain.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
六、测试环境
1. 创建测试文件:sudo vi /var/www/html/info.php
2. 添加内容:
3. 访问http://your_server_ip/info.php查看PHP信息页
七、性能优化建议
- 启用OPcache加速PHP
- 配置MySQL查询缓存
- 设置Nginx缓存策略
- 使用CDN加速静态资源
八、常见问题解决
1. 502 Bad Gateway错误
检查PHP-FPM是否运行,以及Nginx配置中的fastcgi_pass路径是否正确。
2. 数据库连接失败
确保MySQL服务正在运行,检查防火墙设置,验证用户名和密码。
3. 文件权限问题
设置正确的文件权限:sudo chown -R nginx:nginx /var/www/html
通过以上步骤,您已经成功在Linux云服务器上搭建了LNMP环境。这个环境非常适合运行WordPress、Laravel等PHP应用程序。建议定期更新软件包以确保安全性,并根据实际需求调整配置参数以获得最佳性能。
