在linux服务器上部署LNMP (Linux, nginx, mysql, php) 环境是搭建Web应用的常见方法。本文提供详细的安装步骤:
一、安装Nginx Web服务器
首先更新系统软件包列表,然后安装Nginx:
sudo apt update sudo apt install nginx -y
sudo yum update sudo yum install nginx -y
安装完成后,启动Nginx并设置为开机启动:
sudo systemctl start nginx sudo systemctl enable nginx
在浏览器访问服务器IP地址,查看Nginx默认欢迎页面,确认安装成功。
Debian/Ubuntu系统:
sudo apt install mysql-server -y
Red Hat/CentOS系统:
sudo yum install mariadb-server -y
运行MySQL安全脚本,设置root密码和其他安全选项:
sudo mysql_secure_installation
三、安装PHP解释器
Debian/Ubuntu系统:
sudo apt install php-fpm php-mysql -y
Red Hat/CentOS系统:
sudo yum install php php-fpm php-mysql -y
启动PHP-FPM并设置为开机启动: (注意:php7.4-fpm 可能需要根据你的PHP版本调整为php8.0-fpm或其他版本)
sudo systemctl start php-fpm sudo systemctl enable php-fpm
四、配置Nginx与PHP-FPM
编辑Nginx默认站点配置文件(/etc/nginx/sites-available/default):
sudo nano /etc/nginx/sites-available/default
找到.php相关的配置块,并确保fastcgi_pass指向正确的PHP-FPM套接字文件 (路径可能因PHP版本而异,例如/run/php/php8.0-fpm.sock):
location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php-fpm.sock; # 调整为你的PHP-FPM套接字路径 }
测试Nginx配置:
sudo nginx -t
无错误后,重启Nginx:
sudo systemctl restart nginx
五、PHP测试
创建测试文件/var/www/html/info.php:
<?php phpinfo(); ?>
在浏览器访问http://你的服务器IP/info.php,查看PHP信息页面,确认LNMP环境搭建成功。
六、常见问题及解决方案
- 权限问题: 检查Nginx和PHP-FPM进程对网站文件和目录的访问权限,使用chown和chmod命令调整权限。
- 端口冲突: 使用netstat -tuln | grep 80检查端口80是否被占用。
- 防火墙: 确保防火墙允许80(HTTP)和443(https)端口的流量。
- PHP版本不兼容: 根据需要安装不同版本的PHP,并调整Nginx和PHP-FPM配置。
如有任何错误信息,请提供详细信息以便更好地解决问题。 本指南旨在提供一个通用的安装步骤,具体操作可能因Linux发行版和PHP版本而略有不同。