通過nginx設定二級網站
阿新 • • 發佈:2019-02-15
現在有一個主域名www.example.com,通過nginx代理訪問到192.168.1.10的8080埠,要實現aaa.example.com訪問192.168.1.11這個機器的8080埠,bbb.example.com訪問192.168.1.11這個機器的8081埠
第一步,要確保*.example.com的域名已經指定到對應的IP上
第二步,在nginx的配置檔案中server部分配置泛域名:
server { listen 80; server_name *.example.com; } 第三步,通過正則表示式,匹配二級域名部分,並把匹配到的內容儲存到變數中 if ( $http_host ~* "^(.*?)\.example\.com$" ) { set $domain $1; } 第四步,location 中進行設定 location / { root /home/example; index index.html index.htm; proxy_pass http://example_wwwif ( $domain ~* "aaa" ) { proxy_pass http://example_aaa; } if ( $domain ~* "bbb" ) { proxy_pass http://example_bbb; } } 第五步,設定upstream,這裡可以進行負載均衡,具體不詳細說 upstream example_www{ server 192.168.1.10:8080 weight=1; #server 192.168.1.10:808
至此,二級網站就配置完成了,最後再整理一下整個配置檔案 …… upstream example_www{ server 192.168.1.10:8080 weight=1; #server 192.168.1.10:8081 weight=
server { listen 80; server_name *.example.com; if ( $http_host ~* "^(.*?)\.example\.com$" ) { set $domain $1; } location / { root /home/example; index index.html index.htm; proxy_pass http://example_www
if ( $domain ~* "aaa" ) { proxy_pass http://example_aaa; } if ( $domain ~* "bbb" ) { proxy_pass http://example_bbb; } } }