nginx如何實現動靜分離

為了加快網站的解析速度,可以把動態頁面和靜態頁面由不同的服務器來解析,加快解析速度。降低原來單個服務器的壓力。

nginx如何實現動靜分離

準備一個nginx代理兩個http分別處理動態和靜態。也可以讓nginx代理自己解析靜態網頁,不過nginx又代理又解析網站感覺壓力也挺大的。

這里nginx的重要的配置如下。

 location / {             root   /var/www/html/upload;             index  index.php index.htm;         }      location ~ .*.(html|gif|jpg|png|bmp|swf|jpeg)$ {                   proxy_pass http://192.168.43.22:80;         }         location ~ .php$ {             proxy_pass   http://192.168.43.62:80;         }

location /? 的作用

定義了請求代理的時候nginx去/var/www/html/upload? 下尋找index.php 當他找到index.php的時候匹配了下面的正則? location ~ .php$。

location ~ .php$? ?的作用

以php結尾的都以代理的方式轉發給http(192.168.43.62),http1 去處理,這里http1要去看自己的配置文件 在自己的配置文件中定義網站根目錄 /var/www/html/upload? 找.index.php? 然后處理解析返回給nginx 。

?location ~ .*.(html|gif|jpg|png|bmp|swf|jpeg)$? 的作用

以html等等的靜態頁面都交給http2(192.168.43.22)來處理 ,http2 去找自己的網站目錄 然后返回給nginx 。

兩個http放的肯定是一樣的目錄,只不過每個服務器的任務不一樣。

代理本身要有網站的目錄,因為最上面的 location / 先生效? ?如果沒有目錄 會直接提示找不到目錄 不會再往下匹配。

3個服務器放網站的目錄一樣 網站文件一樣,? http的配置文件根目錄要指定對。

更多Nginx相關技術文章,請訪問Nginx使用教程欄目進行學習!?

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享