Centos--學習筆記-Tomcat、Nginx共用80埠
阿新 • • 發佈:2019-01-01
前段時間因為對Tomcat不太熟悉,所以還不敢將其部署到我的阿里雲伺服器上,所以就用著新浪雲端計算的雲容器來部署JSP的war檔案。在我的阿里雲CentOS的伺服器上安裝好Java環境還有Tomcat之後就迫不及待的將以前的網路應用部署上去,我的這個雲應用是為了實現微信公眾號的業務邏輯的,所以微信伺服器有一個認證的過程,但是一直認證失敗。最後看到原來微信伺服器只支援80埠和443埠的網路連線。
我的伺服器上還有一個代理伺服器是Nginx,它上面還部署著一個網站,所以我就想能不能將tomacat的8080埠代理到80埠上,網上一搜還真的可以呢!所以記錄一下:
參考連結
場景:專案1放在tomcat1中,專案2放在tomcat2中,兩個tomcat放在同一臺伺服器上,需要共享80埠訪問
注意:這裡和叢集部署是不同的,叢集部署是一個專案放在多個tomcat中。這裡通過nginx做反向代理。然後修改Nginx的配置檔案。
server {
listen 80;
server_name 192.168.1.197;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#加下面的配置
location /server1{
proxy_pass http:// 192.168.1.197:8081/server1;#主要是這裡,這是tomcat1的埠和專案
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
root html;
index index.html index.htm;
}
location /server2{
proxy_pass http://192.168.1.197:8082/server2;#主要是這裡,這是tomcat2的埠和專案</span>
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
root html;
index index.html index.htm;
}
我的編寫是
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80; #監聽埠
server_name liefyuan.top; #域名
#這裡是我部署的一個網站的配置,後端是Python寫的Flask框架
location / {
include uwsgi_params;
uwsgi_pass unix:/home/three/main.sock;
uwsgi_param UWSGI_PYHOME /root/.virtualenvs/env; # 指向虛擬環境目錄
uwsgi_param UWSGI_CHDIR /home/three; # 指向網站根目錄
uwsgi_param UWSGI_SCRIPT main:app; # 指定啟動程式
}
location /static {
alias /home/three/static;
}
#這裡是我部署在Tomcat上的應用,那個war包名就叫liefyuan3.0_war
location /liefyuan3.0_war{
proxy_pass http://localhost:8080/liefyuan3.0_war;#主要是這裡,這是tomcat1的埠和專案
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
root html;
index index.html index.htm;
}
然後通過微信驗證,完美通過驗證!終於可以放棄新浪雲的伺服器了(好貴啊!)。