1. 程式人生 > >nginx實現多伺服器共用一個80埠

nginx實現多伺服器共用一個80埠

一、下載nginx。

我使用的版本是1.7.2

二、部署專案

下面我有兩個專案A和B,分別使用兩個tomcat:tomcatA和tomcatB,分別把專案A部署到tomcatA和專案B部署到tomcatB裡面去。

1. 找到tomcatA下的conf資料夾,找到server.xml檔案。修改埠號(我修改為8500):

<Connector port="8500"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" maxPostSize="0"/>

2. 步驟跟1的是一樣的,找到tomcatB的conf資料夾,再找到server.xml檔案。修改埠號(我修改為8600):

<Connector port="8600"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enable
Lookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" maxPostSize="0"/>

3. 同時啟動兩個專案

4. 把下載好的nginx解壓出來

tomcat+nginx反向代理(實現一個伺服器,一個ip共用80埠)

5.同樣找到conf資料夾,找到nginx.conf檔案,進行編輯修改,如下圖

tomcat+nginx反向代理(實現一個伺服器,一個ip共用80埠)

下面在附下文字配置程式碼:

server {
        listen       80;
        server_name
127.0.0.1; #charset koi8-r; #access_log logs/host.access.log main; location / { # root html; proxy_pass http://127.0.0.1:9100/spa_found_0.5.1/ ; index index.html index.htm; } location /shopService{ proxy_pass http://127.0.0.1:8080/shopService ; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

6.修改完後,我們啟動一下nginx

tomcat+nginx反向代理(實現一個伺服器,一個ip共用80埠)

這個時候你會發現一閃而過,其實已經啟動了!你可以到工作管理員裡面檢視得到。

tomcat+nginx反向代理(實現一個伺服器,一個ip共用80埠)

接著我們通過以下命令來載入我們剛才配置的檔案:

nginx -s reload

而且還可以通過以下命令來檢查配置檔案是否有錯:

nginx -t

7.如果沒有報錯,那麼你在瀏覽器地址輸入你的連結地址就可以訪問到你的專案了,例如:

http://115.29.xxx.xxx/A/
http://115.29.xxx.xxx/B/

附:ip地址可以改寫成已經繫結的域名。