Ngnix+Tomcat配置負(fù)載均衡
Posted on 2016-01-28 19:45 笑看人生 閱讀(3274) 評(píng)論(0) 編輯 收藏 所屬分類: Web開(kāi)發(fā)技術(shù)1.安裝tomcat
下載對(duì)應(yīng)的Tomcat版本apache-tomcat-7.0.67-windows-x86.zip,解壓到D:\apache-tomcat-7.0.67,配置如下環(huán)境變量:
CATALINA_HOME
D:\apache-tomcat-7.0.67
Path %CATALINA_HOME%\bin;
運(yùn)行D:\apache-tomcat-7.0.67\bin\startup.bat命令
打開(kāi)瀏覽器,輸入http://localhost:8080/,如果能正常顯示如下頁(yè)面,說(shuō)明Tomcat配置成功。
2.安裝Ngnix
下載對(duì)應(yīng)的Ngnix版本 nginx-1.6.3.zip,解壓到
Ngnix的默認(rèn)監(jiān)聽(tīng)端口是80,修改默認(rèn)監(jiān)聽(tīng)端口為88(不修改也可以,只是本機(jī)的80端口已被其他服務(wù)占用了)
修改配置文件D:\nginx-1.6.3\conf\nginx.conf
server {
listen 88;
….
}
運(yùn)行D:\nginx-1.6.3\nginx.exe
瀏覽器中輸入http://localhost:88/,如果能打開(kāi)如下頁(yè)面,說(shuō)明nginx配置成功。
配置nginx,讓nginx反向代理tomcat
修改配置文件D:\nginx-1.6.3\conf\nginx.conf
server {
listen 88; #80 ==> 88
server_name localhost;
#charset koi8-r;
#access_log
logs/host.access.log main;
location / {
proxy_pass http://localhost:8080;
#root html;
#index index.html index.htm;
}
…
}
運(yùn)行nginx -s reload重新加載ngnix的配置文件,然后啟動(dòng)Tomcat
在瀏覽器中輸入http://localhost:88/,如果能打開(kāi)Tomcat的主頁(yè)面,說(shuō)明ngnix反向代理Tomcat配置成功。
配置讓Tomcat處理所有jsp頁(yè)面
location
~ \.jsp$ { # / ==> ~ \.jsp
proxy_pass http://localhost:8080;
#root html;
#index index.html index.htm;
}
運(yùn)行nginx -s reload重新加載ngnix的配置文件
在瀏覽器中輸入http://localhost:88/,發(fā)現(xiàn)這時(shí)候顯示如下頁(yè)面
因?yàn)檎?qǐng)求地址沒(méi)有以jsp結(jié)尾,所以沒(méi)有轉(zhuǎn)發(fā)到Tomcat,如果把地址改成http://localhost:88/index.jsp,這時(shí)候會(huì)顯示如下頁(yè)面
發(fā)現(xiàn)頁(yè)面雖然顯示成功了,但是頁(yè)面上的圖片和css樣式?jīng)]有顯示出來(lái),因?yàn)槲覀儧](méi)有配置讓ngnix來(lái)處理這些靜態(tài)頁(yè)面元素,使用ngnix和tomcat的一個(gè)主要功能就是做到動(dòng)靜分離,即讓tomcat來(lái)處理像jsp之類的動(dòng)態(tài)頁(yè)面,讓ngnix來(lái)處理html,jpg等之類的靜態(tài)頁(yè)面。我們?cè)谂渲梦募凶芳尤缦屡渲?/span>
location ~ \.(html|js|css|png|gif)$ {
root
D:\apache-tomcat-7.0.67\webapps\ROOT;
}
運(yùn)行nginx -s reload重新加載ngnix的配置文件
再輸入http://localhost:88/index.jsp,這時(shí)候會(huì)正常顯示如下頁(yè)面
配置第二個(gè)Tomcat服務(wù)器
解壓apache-tomcat-7.0.67-windows-x86.zip到目錄 C:\apache-tomcat-7.0.67,配置如下環(huán)境變量:
CATALINA2_HOME C:\apache-tomcat-7.0.67
Path %CATALINA2_HOME%\bin;
為了避免和第一個(gè)Tomcat的端口沖突,修改Tomcat如下端口,打開(kāi)C:\apache-tomcat-7.0.67\conf\server.xml文件,修改如下端口
<Server
port="18005"
shutdown="SHUTDOWN">
<Connector
port="18080"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="18443" />
<Connector
port="18009"
protocol="AJP/1.3" redirectPort="18443"
/>
修改startup.bat,catalina.bat和shutdown.bat文件內(nèi)容:
(1)
打開(kāi)C:\apache-tomcat-7.0.67\conf\startup.bat文件,把其中所有CATALINA_HOME替換為CATALINA2_HOME。
(2)打開(kāi)C:\apache-tomcat-7.0.67\conf\catalina.bat文件,把其中所有CATALINA_HOME替換為CATALINA2_HOME。
(3)打開(kāi)C:\apache-tomcat-7.0.67\bin\shutdown.bat文件,把其中所有CATALINA_HOME替換為CATALINA2_HOME。
在地址欄中輸入http://localhost:18080/,如果能正常顯示如下頁(yè)面,說(shuō)明配置成功。
配置ngnix,讓它可以反向代理兩臺(tái)Tomcat,實(shí)現(xiàn)負(fù)載均衡。
修改配置文件D:\nginx-1.6.3\conf\nginx.conf
upstream local_tomcats {
server
localhost:8080;
server
localhost:18080;
}
server {
listen 88; #80 ==> 88
server_name localhost;
location ~
\.jsp$ { # / ==> ~ \.jsp
proxy_pass http://local_tomcats;
#root html;
#index index.html index.htm;
}
…
}
##注意:如果Tomcat分布在不同的機(jī)器上,需要在防火墻中開(kāi)通對(duì)應(yīng)的端口 8080或18080
@import url(http://www.aygfsteel.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);