centos lnmp模块安装教程
CentOS LNMP模块安装教程(Nginx + MySQL + PHP)
一、安装前准备
- 更新系统:确保系统软件包为最新版本,避免兼容性问题。
sudo yum update -y - 安装必备工具:安装编译工具、依赖库及EPEL仓库(提供额外软件包)。
sudo yum install -y wget curl vim gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel sudo yum install -y epel-release
二、安装Nginx(Web服务器)
1. 安装Nginx
通过YUM仓库快速安装Nginx(推荐),避免源码编译的复杂配置。
sudo yum install -y nginx
2. 启动Nginx并设置开机自启
sudo systemctl start nginx # 启动Nginx服务
sudo systemctl enable nginx # 设置开机自动启动
3. 验证Nginx安装
浏览器访问服务器IP地址,若看到Nginx欢迎页面(显示“Welcome to nginx!”),则说明安装成功。
curl http://localhost # 本地验证
三、安装MySQL(数据库服务器)
1. 添加MySQL官方YUM仓库
MySQL官方提供了YUM仓库,确保安装最新稳定版本(以MySQL 8.0为例)。
sudo yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
2. 安装MySQL Server
sudo yum install -y mysql-community-server
3. 启动MySQL并设置开机自启
sudo systemctl start mysqld # 启动MySQL服务
sudo systemctl enable mysqld # 设置开机自动启动
4. 获取临时root密码
MySQL安装后会生成临时root密码,存储在日志文件中。
sudo grep 'temporary password' /var/log/mysqld.log
5. 运行安全配置脚本
修改root密码、移除匿名用户、禁止root远程登录等,提升数据库安全性。
sudo mysql_secure_installation
按提示输入临时密码,设置新密码(建议包含大小写字母、数字和特殊字符),并完成其他安全设置。
6. 登录MySQL验证
mysql -u root -p # 输入新设置的root密码
登录成功后,执行SHOW DATABASES;
查看系统数据库,确认MySQL正常运行。
四、安装PHP(服务器端脚本语言)
1. 安装PHP及常用扩展
LNMP环境需要PHP处理动态请求,安装PHP核心及常用扩展(如MySQL驱动、GD库、XML解析等)。
sudo yum install -y php php-cli php-fpm php-mysqlnd php-gd php-xml php-mbstring php-curl php-xmlrpc
2. 启动PHP-FPM并设置开机自启
PHP-FPM(FastCGI Process Manager)用于处理PHP请求,与Nginx配合使用。
sudo systemctl start php-fpm # 启动PHP-FPM服务
sudo systemctl enable php-fpm # 设置开机自动启动
3. 配置PHP-FPM(可选)
编辑PHP-FPM配置文件,确保其以nginx用户身份运行(与Nginx用户一致),避免权限问题。
sudo vi /etc/php-fpm.d/www.conf
找到以下两行(默认被注释),取消注释并将apache改为nginx:
user = nginx
group = nginx
保存退出后,重启PHP-FPM使配置生效:
sudo systemctl restart php-fpm
4. 测试PHP安装
创建PHP测试文件,验证PHP是否能正常解析。
echo "<
?php phpinfo();
?>
" | sudo tee /var/www/html/info.php
浏览器访问http://your_server_ip/info.php,若看到PHP信息页面(包含PHP版本、扩展列表等),则说明PHP安装成功。
注意:测试完成后,建议删除info.php文件以避免泄露服务器信息:
sudo rm /var/www/html/info.php
五、配置Nginx支持PHP
默认情况下,Nginx无法处理PHP请求,需修改配置文件以支持PHP-FPM。
1. 编辑Nginx默认站点配置
sudo vi /etc/nginx/conf.d/default.conf
在server块中添加以下内容(用于处理.php文件):
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
# PHP-FPM监听的Unix socket路径
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# 脚本文件路径
include fastcgi_params;
# 加载FastCGI参数
}
2. 测试Nginx配置
sudo nginx -t # 检查配置文件语法是否正确
若输出syntax is ok和test is successful,则说明配置正确。
3. 重启Nginx应用配置
sudo systemctl reload nginx # 重新加载Nginx配置
六、验证LNMP环境整合
创建一个包含PHP数据库连接的测试文件,验证LNMP环境是否正常工作。
echo "<
?php
$conn = new mysqli('localhost', 'root', 'your_root_password', 'test');
if ($conn->
connect_error) {
die('Connection failed: ' . $conn->
connect_error);
}
echo 'MySQL connection successful!';
$conn->
close();
?>
" | sudo tee /var/www/html/db_test.php
浏览器访问http://your_server_ip/db_test.php,若看到“MySQL connection successful!”,则说明LNMP环境整合成功。
注意:测试完成后,建议删除db_test.php文件。
七、后续优化(可选)
- 配置防火墙:允许HTTP(80端口)和HTTPS(443端口)流量,提升安全性。
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload - 安装phpMyAdmin:图形化管理MySQL数据库,方便操作。
sudo yum install -y phpmyadmin sudo vi /etc/httpd/conf.d/phpMyAdmin.conf # 修改配置文件,允许远程访问(可选) sudo systemctl restart nginx - 设置SSL证书:使用Let’s Encrypt免费证书开启HTTPS,提升网站安全性。
sudo yum install -y certbot python3-certbot-nginx sudo certbot --nginx -d your_domain.com
通过以上步骤,您已在CentOS系统上成功安装并配置了LNMP(Nginx + MySQL + PHP)环境,可满足大多数Web应用(如WordPress、Discuz等)的部署需求。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos lnmp模块安装教程
本文地址: https://pptw.com/jishu/739287.html
