Nginx+Tomcat實現不同專案域名對映配置(超詳細)
阿新 • • 發佈:2018-12-25
1.域名:先解析一個域名對應固定伺服器IP,例域名:www.csdnTest.com對映伺服器IP:116.110.78.120
2.本機主機:在伺服器(116.110.78.120)上編輯本機主機配置檔案,命令:vi /etc/hosts,在"127.0.0.1 localhost"下增加主機記錄,例:127.0.0.1 csdnTest
3.Nginx配置:在nginx安裝目錄/conf/nginx.conf檔案末尾新增include vhost/*.conf,然後再nginx安裝目錄/conf/vhost目錄下建立檔案例:csdnTest.conf,內容如下:
4.Tomcat配置:編輯tomcat安裝目錄/conf/server.xml
綜上,域名www.csndTest.com對映到指定專案,其中nginx負責把www.csndTest.com反向代理為本地請求csndTest:8080,即為Tomcat所管理,然後Tomcat通過虛擬主機,指向所需專案。
附上面2張圖程式碼:
server { listen 80; server_name www.csdnTest.com; index index.html index.jsp index.htm; error_page 400 /errpage/400.html; error_page 403 /errpage/403.html; error_page 404 /errpage/404.html; error_page 503 /errpage/503.html; location ~ \.jsp$ { proxy_pass http://csdnTest:8080; include naproxy.conf; } location ~ /\.ht { deny all; } location / { try_files $uri @tomcat; } location @tomcat { proxy_pass http://csdnTest:8080; include naproxy.conf; } access_log /www/wdlinux/nginx-1.8.1/logs/cdsnTest_access.log; error_log /www/wdlinux/nginx-1.8.1/logs/cdsnTest_error.log; }
<Engine name="Catalina" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"></Host> <Host name="csdnTest" appBase="webapps2" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" reloadable="true" docBase="/usr/local/java/tomcat7/webapps2/ROOT"/> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="lagmp_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host> </Engine>