如何设置特定的RewriteRule?

时间:2019-03-28 08:16:51

标签: apache http

我正在设置一个新的RewriteRule,并且该网页不会显示。它会引发HTTP错误,例如404或BadRequest。这取决于我使用的组合。 我一般想使用的重写方法有可能吗?

我们要配置以下重写:

此重写有效:

RewriteRule ^/context1/contetx2/context3/context4/Reisen.de.html  https://www.test.at/context1/contetx5/context6/2018/context7/Reisen.html  [R=301,L]

但是我们要在浏览器中显示的URL中“删除”路径/位置“ 2018”。 它看起来应该像这样:  https://www.test.at/context1/contetx5/context6/context7/Reisen.html

我已经与R,QA,P,L,PT组合很多; ProxyPass,RewriteCond等。

预期: 输入网址: https://www.test.at/context1/contetx2/context3/context4/Reisen.de.html

在浏览器中显示(地址行): https://www.test.at/context1/contetx5/context6/context7/Reisen.html

可以通过以下方式访问内容: https://www.test.at/context1/contetx5/context6/2018/context7/Reisen.html

1 个答案:

答案 0 :(得分:1)

尝试:

RewriteRule ^/context1/contetx2/context3/context4/Reisen.de.html  /context1/contetx5/context6/context7/Reisen.html  [R=301,L]
RewriteRule ^/context1/contetx5/context6/context7/Reisen.html  /context1/contetx5/context6/2018/context7/Reisen.html  [L]