重写规则或 Tomcat
RewriteRule or Tomcat
Apache Tomcat 的正确 RewriteRule 是什么?
RewriteCond %{QUERY_STRING} [NC]
RewriteRule /signupd/(.*?) https://app.another-domain.com/?%1 [R=301]
为了将(完整的)URI 路径 /signupd/some-encrypted-id
重写为 https://app.example.com/some-encrypted-id
,您只需要 $CATALINA_BASE/conf/Catalina/localhost/rewrite.config
中的一条规则:
RewriteRule ^/signupd/(.*) https://app.example.com/ [R=301]
并将 RewriteValve
添加到您的 <Host>
。
备注:调试重写规则通常令人沮丧,因此您可能需要设置:
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = FINE
在 $CATALINA_BASE/logging.properties
中查找条目 "用规则模式 Z 将 X 重写为 Y" 在日志中 (localhost.<date>.log
)。
Apache Tomcat 的正确 RewriteRule 是什么?
RewriteCond %{QUERY_STRING} [NC]
RewriteRule /signupd/(.*?) https://app.another-domain.com/?%1 [R=301]
为了将(完整的)URI 路径 /signupd/some-encrypted-id
重写为 https://app.example.com/some-encrypted-id
,您只需要 $CATALINA_BASE/conf/Catalina/localhost/rewrite.config
中的一条规则:
RewriteRule ^/signupd/(.*) https://app.example.com/ [R=301]
并将 RewriteValve
添加到您的 <Host>
。
备注:调试重写规则通常令人沮丧,因此您可能需要设置:
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = FINE
在 $CATALINA_BASE/logging.properties
中查找条目 "用规则模式 Z 将 X 重写为 Y" 在日志中 (localhost.<date>.log
)。