使用yum安装LNMP步骤
输入命令cat /etc/redhat-release,查看当前Linux系统版本
# cat /etc/redhat-release
CentOS release 6.5 (Final)
关闭防火墙自启动
# /etc/init.d/iptables stop
# chkconfig iptables off
在部署LNMP环境之前,首先,用户需要安装Nignx服务器,MySQL数据库,以及PHP环境相关的开发包和库文件,若缺少开发包或库文件,会导致后续LNMP环境部署失败。
配置EPEL源 # yum install epel-release -y
执行如下命令,安装LNMP环境所需的开发包和库文件,若不安装,则会导致后续的LNMP环境安装失败。例如:openssl等
# yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel
在真实的生产环境中,若用户的服务器中,已安装的apache、mysql、php。请执行命令
# yum remove mysql httpd php
卸载相关软件,否则系统原有软件会对部署的LNMP环境中数据有影响。
# Package xx available, but not installed # 没有会提示
安装的Nginx
# yum -y install nginx
编辑
# vi /etc/nginx/conf.d/default.conf
listen [::]:80 default_server; # 在此位置,输入dd命令,删除此行,也就是删除其中监听为ipv6的配置。
启动nginx服务器
# service nginx start
# chkconfig nginx on # 设开机启动nginx
安装mysql
在安装MySQL之前,安装mysql及其组件mysql-server,mysql-devel。
# yum -y install mysql mysql-server mysql-devel
启动mysql
# service mysqld start
# chkconfig mysqld on 设开机启动mysql
安装PHP
安装php及其常用扩展包。若缺少扩展包,可能会导致php安装或运行失败。
# yum -y install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap
安装PHP的相关组件。这样,可以使PHP支持MySQL、FastCGI模式。
# yum -y install php-tidy php-common php-devel php-fpm php-mysql
启动php-fpm
# service php-fpm start
启动php-fpm,界面显示“OK”。由于Nginx是个轻量级的HTTP server,必须借助第三方的FastCGI处理器才可以对PHP进行解析,PHP-FPM是一个第三方的FastCGI进程管理器,只用于PHP。
# chkconfig php-fpm on # 设开机启动php-fpm。
配置nginx支持php
首先,将Nginx配置文件改为备份文件,执行如下命令:
# mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
然后,拷贝默认的配置文件作为配置文件,执行如下命令:
# cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
执行命令
# vim /etc/nginx/nginx.conf
进入nginx配置文件的编辑页面,添加Nginx的fastcgi支持。
首先,将文件第45行左右修改为如下内容,也就是首页支持php语言。
index index.php index.html index.htm;
然后,将文件的65-72行左右代码前的注释“#”去掉,并替换"root"和“fastcgi_param”参数值为如下内容。也就是,使用
/usr/share/nginx/html
作为网站根目录,进行访问。
修改两个地方
root /usr/share/nginx/html;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
# 如下
location ~ .php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
执行命令
# vim /etc/php.ini
进入文件php.ini的编辑页面,在结尾的“;Local Variables:”前添加如下内容。完成后,执行:wq保存并退出编辑页面。
cgi.fix_pathinfo = 1
# 如下
;sysvshm.init_mem = 10000
cgi.fix_pathinfo = 1
; Local Variables:
; tab-width: 4
; End:
重启Nginx和php-fpm服务器。修改的Nginx配置文件中的参数生效。
# service nginx restart
# service php-fpm restart
至此,完成LNMP环境的全部搭建内容,
在Nginx的网站访问的主目录下,创建一个info.php文件,并进入新建文件的编辑页面。并在编辑页面中,输入如下代码,用于显示php的基本信息页面。完成后,输入:wq,保存并退出编辑页面。
执行命令
# vim /usr/share/nginx/html/info.php
<?php
phpinfo();
?>
最后,测试nginx是否成功解析php。打开本地浏览器,并在地址栏中输入:http://xxx.xxx.xx.xx/info.php,若页面显示php介绍信息,证明LNMP环境搭建成功。
yum安装的目录都在/var/lib/下
yum安装mysql、php版本有需求时 可卸载下载对应的rpm包进行安装