1. 程式人生 > >tomcat 配置訪問manager以及jenkins部署到tomcat

tomcat 配置訪問manager以及jenkins部署到tomcat

Tomcat的預設工具manager配置,在很多的生產環境中由於基本用不到、或者是不太需要使用Tomcat預設的manager管理頁面時一般都會把Tomcat的預設webapp下的內容給刪除了,但是如果需要使用Tomcat預設的manager來管理專案時就需要保留相應的檔案目錄。在Tomcat中的webapps中有如下目錄:docs(Tomcat本地說明文件)、examples(Tomcat相關的deamon示例)、host-manager(主機頭管理工具)、manager(專案管理工具)、ROOT(Tomcat預設頁),其中需要保留的是host-manager、manager、ROOT這3個目錄而從Tomcat 6開始為了安全預設條件下Tomcat的host-manager、manager是不能訪問的(http 401拒絕),如需訪問需要分配相關的角色許可權,在這裡就簡單的說一說

Tomcat.png

   首先,需要配置的配置檔案是${catalina.home}/conf/tomcat-users.xml先給Tomcat訪問相關的功能分配角色和配置登入驗證使用者密碼:

12345678910…略…--><role rolename="manager-gui"/><role rolename="manager-script"/><role rolename="manager-jmx"/><role rolename="manager-status"/><role rolename="admin-gui"/><role rolename=
"admin-script"/><user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/></tomcat-users>

此處可以配置多個角色,不同版本Tomcat所擁有的角色都不同,在生產環境中建議修改複雜度高的Tomcat使用者密碼,另外不需要分配所有角色許可權,經需要夠用的即可,如果不能訪問會用相應的提示,在配置好後此時再開啟Tomcat的首頁還是無法進入Tomcat的管理頁面的

403.png

因為從Tomcat 7開始安全機制下預設僅允許本機訪問Tomcat,如需遠端訪問Tomcat的管理頁面還需要配置相應的ip允許規則,配置manager的contest.xml可以在${catalina.home}/conf/Catalina/localhost目錄下配置2個contest.xml檔案,也可以寫成一個,但是建議寫成2個便於日常的許可權管理,如下:

manager.xml:

1234<Context privileged="true" antiResourceLocking="false"docBase="${catalina.home}/webapps/manager"><Valve
 className="org.apache.catalina.valves.RemoteAddrValve" allow="^192.168.*$" /></Context>

host-manager.xml:

1234<Context privileged="true" antiResourceLocking="false"docBase="${catalina.home}/webapps/host-manager"><Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^192.168.*$" /></Context>

其中allow中是填ip可以使用正則表示式匹配,在內網中建議寫成匹配某某網段可以訪問的形式,如此Tomcat的manager頁面訪問配置就完成了

注:上面是轉載的,我自己試的時候發現設定總是不成功,最後是修改webapps/manager/META-INF/context.xml才生效

如果要使用jenkins部署,參考下面文章

tomcat8配置差不多