僅通過8080端口訪問jsp顯然不是一算是一個太好的方法,可以使用nginx的proxy_pass子模塊,實現nginx轉發jsp請求至tomcat。
典型的配置如下:
1 server { 2 listen 80 ; 3 server_name domain; 4 root /data/web/domain ; 5 access_log logs/domain/ access.log; 6 7 location / { 8 index index.jsp; 9 } 10 11 location ~ \.jsp$ { 12 proxy_pass http: // domain:8080; 13 proxy_set_header X-Real- IP $remote_addr; 14 proxy_set_header X-Forwarded- For $proxy_add_x_forwarded_for; 15 proxy_set_header Host $http_host; 16 } 17 18 location @CustomContext { 19 sendfile off; 20 proxy_pass http: // domain:8080; 21 proxy_redirect default; 22 23 proxy_set_header Host $host; 24 proxy_set_header X-Real- IP $remote_addr; 25 proxy_set_header X-Forwarded- For $proxy_add_x_forwarded_for; 26 proxy_max_temp_file_size 0 ; 27 28 } 29 30 location ~ " ^/manager/* " { 31 try_files $uri @CustomContext; 32 } 33 34 location ~ " ^/test/* " { 35 try_files $uri @CustomContext; 36 } 37 38 location ~* \.(gif|jpg| png)$ { 39 access_log off; 40 expires 30d; 41 } 42 43 location ~ / \.ht { 44 deny all; 45 } 46 }
其中:
Line11-Line19,一段常規的轉發配置,將請求轉發至同名的8080端口;
Line18-Line28,是一段特殊的配置信息,定義了一個針對Context應用目錄的轉發規則。因為當你直接轉發"http://domain:8080/directory"時,會報配置文件錯誤,因為proxy_pass并不能轉發目錄;
Line30-Line32及Line34-Line36,定義了兩個目錄的轉發規則,將對該目錄下文件的請求,轉發至上面自定義的目錄轉發規則。
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
