Nginx系列-9.配置NFS實現Nginx實現動靜分離
目錄 - Nginx系列
Nginx系列-1.Linux下安裝Nginx
Nginx系列-2.配置LNMP(Linux、Nginx、MySQL、PHP)架構
Nginx系列-3.配置Nginx虛擬主機
Nginx系列-4.Nginx日誌配置及日誌切割
Nginx系列-5.配置Nginx的防盜鏈
Nginx系列-6.配置Nginx的HTTPS
Nginx系列-7.配置Nginx使用uwsgi支持web.py框架
Nginx系列-8.配置Nginx+Apache實現動靜分離
Nginx系列-9.配置NFS實現Nginx實現動靜分離
Nginx系列-10.采用Nginx搭建正向代理服務
Nginx系列-11.配置Nginx反向代理和負載均衡
實驗環境
三臺最小化安裝的 CentOS 7.3
server1-Nginx-ip: 192.168.204.133
server2-Apache-ip: 192.168.204.134
server3-NFS-ip: 192.168.204.135
實驗拓撲
一、在server3上安裝配置NFS和nginx
-
在nfs上安裝
nfs-utils
和nginx
yum install -y epel-* yum install -y nfs-utils nginx
-
配置
NFS
共享目錄vim /etc/sysconfig/nfs
查找
MOUNTD_PORT=892
,並解除註釋
-
啟動
rpcbind
服務,啟動nfs
服務,查看監聽端口systemctl start rpcbind nfs netstat -anpt | grep rpcbind
-
指定
/var/www/share
目錄為共享目錄,設置權限777
mkdir /var/wwwroot mkdir /var/wwwroot/share chmod 777 /var/wwwroot/share
-
編輯
/etc/exports
文件,並添加如下內容/var/wwwroot/share 192.168.204.*(rw,sync)
-
重啟
nfs
服務systemctl restart nfs
-
修改
nginx
配置文件/etc/nginx/nginx.conf
server { listen 80; server_name file.test.com; location / { root /var/wwwroot; index index.html index.htm; } }
啟動nginx
服務systemctl start nginx
- 排除偶然因素,關閉防火墻
setenforce 0 systemctl stop firewalld
二、在server2上配置NFS,安裝Apache和PHP
-
安裝
nfs-utils
yum install -y nfs-utils
-
查看
NFS
上的共享目錄showmount -e 192.168.204.135
-
把共享目錄掛載到本地
mkdir /var/wwwroot mkdir /var/wwwroot/share mount 192.168.204.135:/var/wwwroot/share /var/wwwroot/share
-
測試
NFS
在server2
上讀寫文件,在server3
上查看
-
安裝
Apache
和PHP
yum install -y php httpd
-
修改
Apache
的配置文件
將網站根目錄修改為/var/wwwroot
vim /etc/httpd/conf/httpd.conf
在配置文件中添加節點,允許訪問/var/wwwroot
目錄<Directory "/var/wwwroot"> Require all granted </Directory>
-
啟動
Apache
systemctl start httpd
-
排除偶然因素,關閉防火墻
setenforce 0 systemctl stop firewalld
-
建立測試文件
cd /var/wwwroot echo -e "<?php phpinfo(); ?>" >> info.php
- 在宿主機訪問該測試文件
三、在server1(nginx)上配置NFS和Apache動靜分離
-
安裝
nginx
yum install -y epel-* yum install -y nginx vim
-
修改
nginx
配置文件/etc/nginx/nginx.conf
server { listen 80; server_name proxy-server.test.com; root /var/wwwroot; location / { proxy_pass http://192.168.204.134; #Apache Web Server } location /share { proxy_pass http://192.168.204.135/share; #NFS } }
-
啟動
nginx
服務systemctl start nginx
- 排除偶然因素,關閉防火墻
setenforce 0 systemctl stop firewalld
四、測試
-
在
server2
編輯一個PHP文件vim /var/wwwroot/index.php
添加如下內容
<!DOCTYPE html> <html> <head> <title>Test</title> <link rel=‘stylesheet‘ href=‘./share/style.css‘> </head> <body> <?php $str = date(‘Y-m-d h:i:sa‘, time()); ?> <p class=‘time‘><?php echo $str; ?></p> </body> </html>
-
在
server3
編輯一個css文件vim /var/wwwroot/share/style.css
添加如下內容
.time { color: red; font-size: 20px; text-align: center; }
- 在宿主機訪問
server1
的IP地址
其中訪問的index.php
文件來自server2
,style.css
文件來自server3
Nginx系列-9.配置NFS實現Nginx實現動靜分離