CentOS 6.3作为一款经典的Linux发行版,尽管已停止官方支持,但在一些特定场景下仍被使用,本文将详细介绍在CentOS 6.3系统中搭建LNMP(Linux+Nginx+MySQL+PHP)环境的具体步骤、配置要点及注意事项,帮助读者快速完成环境部署。

系统基础环境准备
在开始搭建LNMP之前,确保系统处于最小化安装状态,并更新所有软件包至最新版本,执行以下命令:
yum update -y yum groupinstall "Development Tools" -y yum install wget vim -y
关闭防火墙和SELinux,避免权限问题影响服务运行:
service iptables stop setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
编译安装Nginx
Nginx作为高性能Web服务器,建议通过源码编译以启用更多功能模块,首先安装依赖库:
yum install pcre-devel zlib-devel openssl-devel -y
下载Nginx 1.18.0稳定版并编译安装:
wget http://nginx.org/download/nginx-1.18.0.tar.gz tar zxvf nginx-1.18.0.tar.gz cd nginx-1.18.0 ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module make && make install
创建Nginx启动脚本并设置开机自启:
cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak vim /usr/local/nginx/conf/nginx.conf # 修改worker_processes和server配置 /usr/local/nginx/sbin/nginx echo '/usr/local/nginx/sbin/nginx' >> /etc/rc.local chmod +x /etc/rc.local
安装MySQL数据库
CentOS 6.3官方源中的MySQL版本较旧,推荐使用Percona分支,添加Percona仓库并安装:

rpm -Uvh http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm yum install Percona-Server-server-56 -y
初始化数据库并设置root密码:
service mysql start mysql_secure_installation
优化MySQL配置文件/etc/my.cnf,根据服务器内存调整innodb_buffer_pool_size等参数。
编译安装PHP
LNMP环境中PHP通常以FastCGI模式运行,需配合PHP-FPM,安装依赖库:
yum install libxml2-devel libjpeg-turbo-devel libpng-devel freetype-devel curl-devel -y
下载PHP 5.6.40(与CentOS 6.3兼容性较好)并编译安装:
wget http://php.net/distributions/php-5.6.40.tar.gz tar zxvf php-5.6.40.tar.gz cd php-5.6.40 ./configure --prefix=/usr/local/php --enable-fpm --with-mysql --with-pdo-mysql --with-mysqli --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-curl make && make install
复制PHP-FPM配置文件并启动服务:
cp php.ini-production /usr/local/php/lib/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf vim /usr/local/php/etc/php-fpm.conf # 修改pid和pm相关配置 /usr/local/php/sbin/php-fpm echo '/usr/local/php/sbin/php-fpm' >> /etc/rc.local
配置Nginx与PHP-FPM联动
修改Nginx配置文件,添加PHP解析规则,在server段中添加:

location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
} 测试PHP是否解析正常,在Nginx网站根目录创建info.php为<?php phpinfo(); ?>,通过浏览器访问验证。
常见问题与优化建议
- 权限问题:确保Nginx和PHP-FPM进程对网站目录有读写权限,可通过
chown -R nginx.nginx /usr/local/nginx/html设置。 - 性能调优:根据服务器负载调整Nginx的
worker_connections和PHP-FPM的pm.max_children参数。 - 日志管理:定期分析Nginx的
access.log和PHP-FPM的slowlog,定位性能瓶颈。
FAQs
Q1: 如何解决LNMP环境下PHP上传文件失败的问题?
A1: 主要原因包括权限不足、上传目录权限缺失、PHP配置限制,可通过以下步骤解决:
- 检查上传目录权限:
chmod -R 755 /path/to/upload - 修改
php.ini中的upload_max_filesize和post_max_size参数(如设置为32M) - 重启PHP-FPM:
/usr/local/php/sbin/php-fpm restart
Q2: CentOS 6.3搭建LNMP后如何升级PHP版本?
A2: 升级PHP需谨慎操作,建议备份现有配置和数据:
- 卸载旧版PHP:
make uninstall(源码安装)或yum remove php* - 下载目标PHP版本(如7.4),重复编译安装步骤
- 注意PHP 7.x与旧版扩展的兼容性,可能需要重新编译如
mysqli等扩展 - 更新Nginx配置中的PHP-FPM监听端口(如从9000改为9001)
- 逐步迁移现有网站,测试功能完整性后再切换环境
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复