nginx高性能WEB服務器系列之五--實戰項目線上nginx多站點配置


nginx系列友情鏈接:
nginx高性能WEB服務器系列之一簡介及安裝
https://www.cnblogs.com/maxtgood/p/9597596.html
nginx高性能WEB服務器系列之二命令管理
https://www.cnblogs.com/maxtgood/p/9597990.html
nginx高性能WEB服務器系列之三版本升級
https://www.cnblogs.com/maxtgood/p/9598113.html
nginx高性能WEB服務器系列之四配置文件詳解
https://www.cnblogs.com/maxtgood/p/9598333.html
nginx高性能WEB服務器系列之五--實戰項目線上nginx多站點配置
https://www.cnblogs.com/maxtgood/p/9598610.html
nginx高性能WEB服務器系列之六--nginx負載均衡配置+健康檢查
https://www.cnblogs.com/maxtgood/p/9599068.html
nginx高性能WEB服務器系列之七--nginx反向代理
https://www.cnblogs.com/maxtgood/p/9599335.html
nginx高性能WEB服務器系列之八--nginx日志分析與切割
https://www.cnblogs.com/maxtgood/p/9599542.html
nginx高性能WEB服務器系列之九--nginx運維故障日常解決方案
https://www.cnblogs.com/maxtgood/p/9599752.html

注:原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。

nginx的強大之處不必要我細說,當初第一次接觸nginx的時候就發現了它的強大之處,並且自我覺得非常有必要出一篇記錄nginx的各個功能及坑點。

歡迎大家對nginx感興趣的朋友們來一起學習與及時提出錯誤及誤點。有問題的可以在評論區@我。

一:nginx多站點配置

在真實的服務器環境,為了充分利用服務器資源,一台nginx web服務器同時會配置N個虛擬域名主機,即多個域名對於同樣一個80(亦可以非常規)端口。然后服務器IP數量很多,也可以配置基於多個IP對應同一個端口。這里具體介紹兩種種類,方法大概相同,實現結果不同。

方法一:

需求:同個端口,訪問域名不同,訪問頁面不同。

vim修改nginx.conf server段配置內容如下:

server {
        listen       80;
        server_name  www.a.com;
        #access_log  logs/host.access.log  main;
        location / {
            root   html/a;
            index  index.html index.htm;
        }

server {
        listen       80;
        server_name  www.b.com;
        #access_log  logs/host.access.log  main;
        location / {
            root   html/b;
            index  index.html index.htm;
        }

解釋:創建兩個不同的目錄mkdir –p /usr/local/nginx/html/{a,b},然后分別在兩個目錄創建兩個不同的index.html網站頁面即可。通過客戶端配置hosts指向兩個域名,然后在IE瀏覽器訪問測試效果。

方法二:

需求:同個端口,訪問一級域名相同,二級域名不同,訪問頁面不同。(根據域名后綴區分訪問頁面)

vim修改nginx.conf server段配置內容如下:

server {
        listen       8089;#####這里使用了非常規端口,只需要解析到以下使用到的sjb.suhuayue.com域名中即可

        server_name  sjb.suhuayue.com _;
        access_log  logs/host.access.log  main;
        error_log  logs/error.log;
location / {
        index  index.html index.htm;
               }
location ^~ /a/ {
            add_header X-Frame-Options DENY;
            proxy_set_header X-Client-Really-IP $remote_addr;
            alias /opt/qypay/a/;
            index  index.html index.htm;
           }

       location ^~ /b/ {
            add_header X-Frame-Options DENY;
            alias /opt/qypay/b/;
            proxy_set_header X-Client-Really-IP $remote_addr;
            index  index.html index.htm;
  }
}

解釋:以上配置成功后,sjb.suhuayue.com/a/為頁面一,sjb.suhuayue.com/b/為頁面二。

注意幾點:

1 以上配置文件中alias /opt/qypay/a/;這里必須以/結尾,因為你制定的是一個目錄
2 如果現實頁面的時候,頁面能讀取到,但是顯示不出來,那么就是解析問題,可配合前端進行詢問前端為哪種解析。
3 訪問域名的時候,如下所訴相同,域名+location關鍵詞 訪問的時候,必須以/結尾,如:http://sjb.suhuayue.com/a/是正確的。http://sjb.suhuayue.com/a為錯誤的。

至此,基本上多站點訪問配置也解釋的差不多了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM