You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tomcat 9.0.75 RewriteRule配置失败求助:自定义域名跳转问题

Tomcat 9.0.75 友好域名映射配置方案

一、修复RewriteValve配置实现内部映射

你之前用RewriteValve没成功,核心问题是用了[R=302]外部跳转,而你需要的是内部代理映射(浏览器地址栏保持mydomain2),同时规则路径匹配也需要调整:

1. 确认server.xml的Host配置

如果mydomain2是独立域名,先在server.xml里新增对应的Host节点(如果是复用localhost,直接在原Host下加Valve即可):

<Host name="mydomain2" appBase="webapps" unpackWARs="true" autoDeploy="true">
    <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" />
    <!-- 可选:如果需要支持www前缀,加别名 -->
    <Alias>www.mydomain2</Alias>
</Host>

如果是用localhost作为Host,确保原Host节点已经包含RewriteValve。

2. 正确编写rewrite.config

在conf/Catalina/mydomain2/目录下创建rewrite.config(如果用localhost,就放conf/Catalina/localhost/),内容改成:

# 匹配mydomain2或www.mydomain2的请求
RewriteCond %{HTTP_HOST} ^mydomain2$ [OR]
RewriteCond %{HTTP_HOST} ^www.mydomain2$
# 内部代理到原应用路径,用Tomcat内部相对路径,不要写外部域名
RewriteRule ^/(.*)$ /ords/r/workspace/myapp/$1 [P,L]
  • [P]:标记为内部代理,请求会在Tomcat内部转发,浏览器地址不变
  • [L]:执行完这条规则后停止后续匹配
  • 不用写完整的https://mydomain,因为是内部转发,直接用应用的相对路径即可

3. 验证hosts映射

确保本地hosts文件里已经添加:

127.0.0.1 mydomain2

二、用Context配置实现根路径映射

如果你的ords是已部署的Web应用,也可以通过配置Context直接把mydomain2的根路径绑定到目标子路径:

1. 创建ROOT.xml配置文件

在conf/Catalina/mydomain2/下创建ROOT.xml(文件名必须是ROOT.xml,对应域名的根路径),内容:

<Context docBase="${catalina.base}/webapps/ords" path="" reloadable="true">
    <!-- 解决特殊字符解析问题,可选 -->
    <Parameter name="org.apache.tomcat.util.http.parser.HttpParser.requestTargetAllow" value="|{}" />
    <!-- 启用RewriteValve做内部路径跳转 -->
    <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" />
</Context>

2. 配套rewrite.config

同样在conf/Catalina/mydomain2/下创建rewrite.config:

# 把根路径跳转到目标子路径
RewriteRule ^/$ /ords/r/workspace/myapp/ [L]
# 把所有子路径转发到目标路径
RewriteRule ^/(.*)$ /ords/r/workspace/myapp/$1 [L]

三、排查要点

  • 查看日志:检查logs/localhost.log或访问日志,确认请求是否到达Tomcat,以及规则是否匹配
  • 权限检查:确保conf/Catalina/mydomain2/目录存在,Tomcat有权限读写该目录及文件
  • HTTPS配置:如果使用HTTPS,server.xml里的SSL Connector要配置正确,且mydomain2的Host使用相同的SSL端口

内容的提问来源于stack exchange,提问作者Ryu415

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 00:07:44