在CentOS上部署LNMP(Linux, Nginx, MySQL/MariaDB, PHP)服务器是一个常见的任务,特别是对于新手来说,以下是一个简明版的指南,帮助你快速搭建一个基本的LNMP环境。
更新系统
确保你的系统是最新的。
sudo yum update y
安装Nginx
Nginx是一个高性能的HTTP和反向代理服务器。
sudo yum install epelrelease y sudo yum install nginx y sudo systemctl start nginx sudo systemctl enable nginx
安装MariaDB
MariaDB是MySQL的一个分支,通常被用作MySQL的替代品。
sudo yum install mariadbserver mariadb y sudo systemctl start mariadb sudo systemctl enable mariadb
初始化数据库并设置root密码:
sudo mysql_secure_installation
按照提示完成安全设置。
安装PHP
PHP是一种流行的服务器端脚本语言。
sudo yum install php phpfpm phpmysqlnd y
配置PHPFPM:
编辑/etc/phpfpm.d/www.conf
文件,找到user
和group
行,将它们设置为nginx
:
user = nginx group = nginx
启动并启用PHPFPM服务:
sudo systemctl start phpfpm sudo systemctl enable phpfpm
配置Nginx使用PHP
编辑Nginx配置文件,例如/etc/nginx/conf.d/default.conf
:
server { listen 80; server_name your_domain_or_IP; root /usr/share/nginx/html; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/phpfpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
测试Nginx配置是否正确:
sudo nginx t
如果没有错误,重新加载Nginx:
sudo systemctl restart nginx
创建一个简单的PHP测试页面
创建一个PHP文件来测试你的LNMP环境是否工作正常。
echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/info.php
打开浏览器并访问http://your_domain_or_IP/info.php
,你应该能看到PHP信息页面。
防火墙设置(可选)
如果你使用的是防火墙,需要允许HTTP和HTTPS流量。
sudo firewallcmd permanent zone=public addservice=http sudo firewallcmd permanent zone=public addservice=https sudo firewallcmd reload
通过以上步骤,你已经成功在CentOS上部署了一个基本的LNMP环境,这是一个非常基础的设置,适合初学者,根据实际需求,你可能需要进一步优化和调整配置。