“每个理性的IT人士都置顶了吴柯的运维笔记”
LNMP代表的就是:Linux系统下Nginx MySQL PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
我们为什么需要它?
编译安装需要输入大量的命令,如果是配置生产环境需要耗费大量的时间。
如何部署LNMP环境?
在RHEL7系统中,源码安装Nginx,使用RPM包安装MariaDB、PHP、PHP-FPM软件。
需要安装的软件:
- nginx
- mariadb、mariadb-server、mariadb-devel
- php、php-fpm、php-mysql
步骤
一:安装软件
1)使用yum安装基础依赖包
# yum -y install gcc openssl-devel pcre-devel zlib-devel.. ..
2)源码安装Nginx
# useradd –s /sbin/nologin nginx
# tar -zxvf nginx-1.8.0.tar.gz
# cd nginx-1.8.0
# ./configure > --prefix=/usr/local/nginx > --user=nginx --group=nginx > --with-http_ssl_module
# make && make install.. ..
3)安装MariaDB
# yum –y install mariadb mariadb-server mariadb-devel
4)php和php-fpm
# yum –y install php php-mysql
# tar –xf lnmp_soft-2017-03-28.tar.gz
# cd lnmp_soft
# yum –y localinstall php-fpm-5.4.16-36.el7_1.x86_64.rpm
二:启服务
1)启动Nginx服务
# /usr/local/nginx/sbin/nginx #启动Nginx服务
# netstat -utnlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 32428/nginx
2)启动MySQL服务
# systemctl start mariadb
# systemctl status mariadb
# systemctl enable mariadb
3)启动PHP-FPM服务
# systemctl start php-fpm
# systemctl status php-fpm
# systemctl enable php-fpm
测试LNMPP平台
一:创建并修改php-fpm配置文件
1)查看php-fpm配置文件
# vim /etc/php-fpm.d/www.conf
...
2)启动php-fpm服务
# systemctl restart php-fpm
# systemctl status php-fpm
二:修改Nginx配置文件并启动服务
# vim /usr/local/nginx/conf/nginx.conf
location / {
root html;
index index.php index.html index.htm;
}
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
# /usr/local/nginx/sbin/nginx -s reload
三:创建PHP页面,测试LNMP架构能否解析PHP页面
1)创建PHP测试页面:
# vim /usr/local/nginx/html/test.php
<?php
$i="This is a test Page";
echo $i;
?>
#cp test.php /usr/local/nginx/html
2)客户端使用浏览器访问服务器PHP首页文档,检验是否成功:
# firefox http://192.168.4.5/test.php
以上配置可实现用户访问网站的动静分离,通过location中配置实现。用户访问网站时:
-如果是静态网站,找到页面,返回页面给用户;
-如果是动态网站,找到页面,转发给9000