Nginx 动静分离 -02
生活随笔
收集整理的這篇文章主要介紹了
Nginx 动静分离 -02
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Nginx 動靜分離 ---- --------切記 10.10.0.7
一、單臺機器動靜分離
[root@web01 ~]# cat /etc/nginx/conf.d/linux12.wp.com.conf server {listen 80;server_name linux12.wp.com;location / {root /mm/wordpress;index index.php;}location ~* \.(jpg|png|gif)$ {root /mm/wordpress;}location ~* \.php$ {fastcgi_pass 127.0.0.1:9000;fastcgi_param SCRIPT_FILENAME /mm/wordpress/$fastcgi_script_name;include fastcgi_params;} }2.多臺機器的動靜分離
1.準備環境
環境準備主機 IP 主機角色 服務 條件 web01 10.0.0.7 靜態資源 nginxt 關閉防火墻和selinuxweb02 10.0.0.8 動態資源 nginx 關閉防火墻和selinuxlb01 10.10.0.5 負載均衡 comcat 關閉防火墻和selinux1、配置web01的靜態資源
1.配置nginx [root@web01 conf.d]# vi linux12.dj.com.conf server {listen 80;server_name linux12.dj.com;location ~* \.(jpg|png|mp4|gif)$ {root /mm/picture;} } ## 檢查nginx -t2.上傳靜態資源
## 創建目錄 mkdir /mm/picture [root@web01 ~]# mkdir /mm/picture[root@web01 ~]# cd /mm/picture/ [root@web01 picture]# rz上傳 total 116 -rw-r--r-- 1 root root 86756 Mar 27 18:02 5.png -rw-r--r-- 1 root root 25836 Mar 27 18:22 7.png### 授權 [root@web01 ~]# chown -R www.www /mm/## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart nginx3.測試靜態資源并訪問
1.本地配置hosts10.10.0.7 linux12.dj.com2、訪問靜態資源http://linux12.dj.com/5.png## 1.配置web02的動態資源
# 1.安裝tomcat [root@web02 ~]# yum install -y tomcat2.配置動態資源
[root@web02 ~]# cd /usr/share/tomcat/webapps[root@web02 webapps]# mkdir ROOT [root@web02 webapps]# vi ROOT/java_test.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <HTML><HEAD><TITLE>測試動態的資源</TITLE></HEAD><BODY><%Random rand = new Random();out.println("<h1>隨機數:<h1>");out.println(rand.nextInt(99)+100);%></BODY> </HTML>## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart tomcat3.測試動態資源并訪問
1、配置本地hosts10.10.0.8 linux12.dj.com2、訪問動態資源http://linux12.dj.com:8080/java_test.jsp1、配置負載均衡
# 1.配置文件 --01 [root@lb01 ~]# vi /etc/nginx/conf.d/linux12.dj.com.conf upstream dt {server 10.10.0.8:8080;### 可以配置多臺 server 10.0.0.18:8080; }upstream jt {server 10.10.0.7;### 可以配置多臺 server 10.0.0.11; }server {listen 80;server_name linux12.dj.com;location / {root /mm/dj;index index.html;}location ~* \.(jpg|png|gif)$ {proxy_pass http://jt;include proxy_params;}proxy_pass http://dt;include proxy_params;} } # 1.配置文件 --02 [root@lb01 dj]# cat /etc/nginx/conf.d/linux12.dj.com.conf server {listen 80;server_name linux12.dj.com;location / {root /mm/dj;index index.html;}location ~* \.(jpg|png|gif)$ {proxy_pass http://10.10.0.7;include proxy_params;}location ~* \.(php|jsp)$ {proxy_pass http://10.10.0.8:8080;include proxy_params;} }## 檢查nginx -t 并重啟 [root@lb01 ~]# systemctl restart nginx3.測試動靜分離資源并訪問
1、配置本地hosts10.10.0.5 linux12.dj.com2、訪問http://linux12.dj.com/java_test.jsphttp://linux12.dj.com/5.png4、整合靜態資源和動態資源
1.1創建站點目錄
[root@lb01 ~]# mkdir -p /mm/dj1.2.編輯html文件
[root@lb01 ~]# vim /mm/dj/index.html [root@lb01 dj]# cat index.html <head><meta charset="UTF-8" /><title>測試ajax和跨域訪問</title><script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script> </head> <script type="text/javascript"> $(document).ready(function(){$.ajax({type: "GET",url: "http://linux12.dj.com/java_test.jsp",success: function(data){$("#get_data").html(data)},error: function() {alert("小姐姐,斷網了,重新檢查網絡再來哦~");}}); }); </script><body><h1>測試動靜分離---霉霉</h1><img src="http://linux12.dj.com/5.png"><div id="get_data"></div></body> </html>1.3.授權目錄
[root@lb01 ~]# chown -R www.www /mm/1.4. 訪問域名測試
結論:靜態資源出現問題不影響動態資源,動態資源出問題不影響靜態資源二、nginx資源分離 --------切記 10.10.0.8
1.準備環境
環境準備主機 IP 主機角色 條件 web01 10.10.0.7 Android頁面 關閉防火墻和selinuxweb02 10.10.0.8 iPhone頁面 關閉防火墻和selinuxweb03 172.16.1.9 PC端頁面 關閉防火墻和selinuxlb01 10.10.0.5 負載均衡 關閉防火墻和selinux172.16.1.52.配置web01服務器
# 1、配置nginx [root@web01 ~]# vim /etc/nginx/conf.d/linux12.sj.com.conf server {listen 80;server_name linux12.sj.com;charset utf8;location / {root /mm/android;index index.html;} }## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart nginx2、創建站點目錄
[root@web01 ~]# mkdir -p /mm/android [root@web01 ~]# echo "我是android" >> /mm/android/index.html [root@web01 ~]# chown -R www.www /mm/android/3、訪問測試
# 1.配置hosts 10.10.0.7 linux12.sj.com3.配置web02服務器
1、配置nginx [root@web02 ~]# vim /etc/nginx/conf.d/linux12.sj.com.conf server {listen 80;server_name linux12.sj.com;charset utf8;location / {root /mm/iphone;index index.html;} }## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart nginx2、創建站點文件
[root@web02 ~]# mkdir -p /mm/iphone [root@web02 ~]# echo "我是Iphone" >> /mm/iphone/index.html [root@web02 ~]# chown -R www.www /mm/iphone/3、訪問測試
# 1.配置hosts 10.10.0.8 linux12.sj.com4.配置web03服務器
# 1、配置nginx [root@web03 ~]# vim /etc/nginx/conf.d/linux12.sj.com.conf server {listen 80;server_name linux12.sj.com;charset utf8;location / {root /mm/pc;index index.html;} }## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart nginx2、創建站點文件
[root@web03 ~]# mkdir -p /mm/pc [root@web03 ~]# echo "我是pc端" >> /mm/pc/index.html [root@web03 ~]# chown -R www.www /mm/3、訪問測試
# 1.配置hosts 10.10.0.9 linux12.sj.com5.配置負載均衡
# 1.配置nginx -01 [root@lb01 ~]# vim /etc/nginx/conf.d/linux12.sj.com.conf upstream android {server 10.10.0.7; }upstream iphone {server 10.10.0.8; }upstream pc {server 10.10.0.9; }server {listen 80;server_name linux12.sj.com;location / {if ($http_user_agent ~* "Android") { #判斷如果是安卓端proxy_pass http://android; #代理到android虛擬主機池}if ($http_user_agent ~* "iPhone") { #判斷如果是蘋果端proxy_pass http://iphone; #代理到iphone虛擬主機池}if ($http_user_agent ~* "WOW64") { #判斷如果是IE瀏覽器return 403; #直接返回403}proxy_pass http://pc; #如果沒有匹配到以上內容,默認都代理到pc虛擬主機池include proxy_params;} }# 1.配置nginx -02 [root@lb01 conf.d]# cat linux12.sj.com.conf server {listen 80;server_name linux12.sj.com;location / {if ($http_user_agent ~* "Android") { #判斷如果是安卓端proxy_pass http://10.10.0.7; #代理到android虛擬主機池}if ($http_user_agent ~* "iPhone") { #判斷如果是蘋果端proxy_pass http://10.10.0.8; #代理到iphone虛擬主機池}if ($http_user_agent ~* "WOW64") { #判斷如果是IE瀏覽器return 403; #直接返回403}proxy_pass http://10.10.0.9; #如果沒有匹配到以上內容,默認都代理到pc虛擬主機池include proxy_params;} }## 檢查nginx -t 并重啟 [root@web01 ~]# systemctl restart nginx2、訪問測試
# 1.配置hosts 10.10.0.5 linux12.sj.com# 2.訪問總結
以上是生活随笔為你收集整理的Nginx 动静分离 -02的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 套接字基础与UDP通信
- 下一篇: 2021年全球与中国水上巡航行业市场规模