1. 程式人生 > >tomcat與nginx配置遇到的問題

tomcat與nginx配置遇到的問題

tomcat異常停止,tomcat啟動之後一接收到請求報RE: WARNING: StandardServer.await: Invalid command '' received;

原因可能是

1:

tomcat的埠配置錯誤了;

2:

nginx配置錯誤了

首先我檢查了訪問靜態資源沒有問題,說明nginx配置的靜態資源沒有問題;

然後,檢查tomcat的配置埠是否被佔用了,但是根據報錯的型別應該不是端口占用;

最後檢查nginx配置的代理埠與tomcat配置的埠一比較,發現了問題;

我把nginx代理埠配置成了tomcat的shutdown port 所以我一發起請求,tomcat就關閉了,而且還是正常關閉;

nginx代理埠修改成tomcat的請求埠就OK了。

這個問題還是源於對tomcat沒有深入的理解,shutdown port和兩個connector port沒有搞明白。

nginx中的配置如下:

server {
        listen       90;
        server_name  localhost;


        #charset koi8-r;


location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root C:/Users/leijin/workspace/web;
#index anjia\index.html;
}


        location / {
proxy_pass http://localhost:9181

/anjia-web/;
        }


    }

tomcat中server.xml配置擷取如下:

<Server port="9181" shutdown="SHUTDOWN">

<Connector port="9182" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

 <Connector port="9183" protocol="AJP/1.3" redirectPort="8443" />

tomcat異常情況說明:


現在會過來看,這個就是有請求發到tomcat的shutdown port上了,導致tomcat直接關閉,訪問自然就出現502 錯誤。就是因為那個nginx標紅的地方,我把port搞成tomcat的shutdown port了

所以我發起請求,tomcat就關閉了,所以它也不是異常關閉,是正常關閉的。標紅的那段說明就明白了,只是對nginx與tomcat不算熟悉,所以居然出現這個錯誤。

所以,這些常用的東西還是要精通才行啊,也不用盲目的去多學什麼新東西了,先把常用的東西精通了,最好還要做好筆記。