tomcat+nginx反向代理(實現一個服務器,一個ip共用80端口)
一、下載nginx。
我使用的版本是1.7.2
以下是官方網站的下載地址:http://nginx.org/en/download.html
二、部署項目
下面我有兩個項目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"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" maxPostSize="0"/>
3. 同時啓動兩個項目
4. 把下載好的nginx解壓出來
5.同樣找到conf文件夾,找到nginx.conf文件,進行編輯修改,如下圖
下面在附下文本配置代碼:
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
這個時候你會發現一閃而過,其實已經啓動了!你可以到任務管理器裏面查看得到。
接着我們通過以下命令來加載我們剛纔配置的文件:
nginx -s reload
而且還可以通過以下命令來檢查配置文件是否有錯:
nginx -t
7.如果沒有報錯,那麼你在瀏覽器地址輸入你的鏈接地址就可以訪問到你的項目了,例如:
http://115.29.xxx.xxx/A/
http://115.29.xxx.xxx/B/
附:ip地址可以改寫成已經綁定的域名。