Nginx 实现动静分离
- 实验环境 192.168.100.160 部署mariadb php
192.168.100.170 部署Nginx 配置实现动静分离
一: 部署192.168.100.160 Apache 和mariadb
[root@server ~]# yum install -y httpd httpd-devel
[root@server ~]# systemctl start httpd.service
[root@server ~]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@server ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@server ~]# firewall-cmd --reload
success
[root@server ~]# yum install mariadb mariadb-server mariadb-libs mariadb-devel -y
[root@server ~]# systemctl start mariadb.service
[root@server ~]# netstat -lnput | grep httpd
tcp6 0 0 :::80 :::* LISTEN 10590/httpd
[root@server ~]# netstat -lnput | grep mariadb
[root@server ~]# netstat -lnput | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 10853/mysqld
[root@server ~]# install -y php
[root@server ~]# yum install php-mysql -y
[root@server ~]# yum install -y php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath php-gd
[root@server html]# vim index.php
<?php
echo "apache web !";
?>
[root@server html]# systemctl restart mariadb.service
[root@server html]# systemctl restart httpd.service
![mark](https://i-blog.csdnimg.cn/blog_migrate/83a71673557f619ceeb15498a9e32f50.png)
二: 部署192.168.100.170 Nginx编译安装
[root@promote ~ ]# cd /opt
//上传Nginx源码包
[root@promote ~ ]# tar zxvf nginx-1.12.2.tar.gz -C /opt
[root@promote ~ ]# useradd -M -s /sbin/nologin nginx
[root@promote ~ ]# cd /opt/nginx-1.12.2/
[root@promote ~ ]# yum install pcre-devel zlib-devel -y
[root@promote ~ ]# ./configure --prefix=/usr/local/nginx/ --user=nginx --group=nginx --with-http_stub_status_module
[root@promote ~ ]# make && make install
[root@promote ~ ]# ln -s /usr/local/nginx/sbin/nginx /usr/local/bin
[root@promote ~ ]# nginx -t
[root@promote ~ ]# vim /etc/init.d/nginx
#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
[root@promote ~ ]# chmod +x /etc/init.d/nginx
[root@promote ~ ]# chkconfig --add nginx
[root@promote ~ ]# yum install elinks -y //访问页面工具
[root@promote ~ ]# setenforce 0
[root@promote ~ ]# systemctl stop firewalld
elinks http://192.168.100.170(localhost)
elinks http://192.168.100.160
![mark](https://i-blog.csdnimg.cn/blog_migrate/a2ca37e97b5f232bb687da167e0ead90.png)
![mark](https://i-blog.csdnimg.cn/blog_migrate/f186a836e711602ce200ce495b9667a3.png)
![mark](https://i-blog.csdnimg.cn/blog_migrate/b68c0806267864f6a2709a00827ed99a.png)
[root@promote nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
proxy_pass http://192.168.100.160;
}
"这个地址是处理动态页面Apache的地址,也就是去160找Apache动态页面处理"
[root@promote nginx-1.12.2]# service nginx stop
[root@promote nginx-1.12.2]# service nginx start
![mark](https://i-blog.csdnimg.cn/blog_migrate/8f016801eb041fea2bd71a2f5f7c1c46.png)
![mark](https://i-blog.csdnimg.cn/blog_migrate/8052644e244a59afb5b385758b336511.png)
- 这样Nginx服务器就可以实现动静分离,既能处理静态html 需求,也能处理php请求