nginx便可用作web服務器也能夠用反向代理(負載均衡)(本身瞭解反向代理和正向代理-詳情),今天介紹一下反向代理多個tomcat,先了解怎麼修改端口同時運行多個tomcat服務器-詳情,而後還要解析本身的域名,解析爲*.lookk.cn,星號是匹配本身域名的子域名(例order.lookk.cn也解析到本身服務器的公網IP),這樣就能夠用項目名作爲子域名了,最後在nginx的配置文件/etc/nginx/nginx.conf的http裏添加一下代碼java
server { listen 80; server_name order.lookk.cn; #要訪問的域名,我這裏用的測試域名,若是有多個,用空格分開 charset utf8; location / { proxy_pass http://127.0.0.1:8080; #映射到代理服務器,能夠是ip加端口, 或url proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } server { listen 80; server_name javatest.lookk.cn; #要訪問的域名,我這裏用的測試域名,若是有多個,用空格分開 charset utf8; location / { proxy_pass http://127.0.0.1:8090; #映射到代理服務器,能夠是ip加端口, 或url proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
運行多個tomcat時,通常一個tomcat最多運行一個項目,這個項目要放在ROOT目錄下-詳情,這樣才能使proxy_pass http://127.0.0.1:8080; 直接訪問該項目nginx
優勢: 用nginx反向代理tomcat有如下幾個優勢web