docker - Tomcat 管理器应用程序:无权查看页面
问题描述
我尝试从 Docker 部署我的应用程序。在 Dockerfile 中:
FROM tomcat:9-jre8-alpine
ADD config/tomcat-users.xml /usr/local/tomcat/conf/tomcat-users.xml
ADD config/settings.xml /usr/local/tomcat/conf/settings.xml
ADD config/context.xml /usr/local/tomcat/webapps/manager/META-INF/context.xml
ADD target/author.war /usr/local/tomcat/webapps/ROOT.war
EXPOSE 8080
CMD ["catalina.sh","run"]
所以,在 tomcat-users.xml 中:
<tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd
http://tomcat.apache.org/xml "
version="1.0">
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
在 settings.xml 中:
<servers>
<server>
<id>TomcatServer</id>
<username>tomcat</username>
<password>s3cret</password>
</server>
</servers>
在 context.xml 中:
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow=".*" />
</Context>
但是,尝试远程访问 Tomcat 管理器应用程序(plesk 中的域),我得到:“您无权查看此页面。默认情况下,管理器只能从与 Tomcat 相同的机器上运行的浏览器访问。如果您愿意要修改此限制,您需要编辑 Manager 的 context.xml 文件...."
另外:对于 localhost-connection 它的工作良好!远程连接的问题
解决方案
你检查过 manager.xml 中的阀门值吗?还有另一个带有 IP 限制的阀门节,我已禁用它。然后一切正常 /conf/Catalina/localhost/
推荐阅读
- java - 逆映射在默认函数上效果不佳
- python - IndexError:if中的列表索引超出范围
- python - 使用 OpenCV 屏蔽图像中的绿色
- spring-boot - Spring Boot 未来会支持 Spring Webflux 应用的 WAR 部署吗?
- r - 除某些变量外,清理当前工作区的功能
- rust - 如何使用 nom 解析 Redis RESP 批量字符串?
- keras - 给定相似性输出神经网络,获得最佳匹配对的有效方法?
- php - Apache 在所有页面上发送“找不到文件”
- python - 来自某些列值的所有可能组合的熊猫系列
- ios - 在用户允许访问照片库之前弹出“已保存照片”警报?