我有一个复杂的网址,旧网站曾用于特定网页。在新的,更新的网站中,这个URL变得更短,更简单(事实上,旧的不再存在)。我尝试将旧网址重定向,当在浏览器中输入或从电子邮件链接到新的,更短且实际存在的网址时。
我已经尝试了无数的事情,但我对mod_rewrite相关的一切都非常糟糕。不用说,我试图在我的.htaccess文件中执行此操作。
旧网址: www.domain.com/Event.211.0.html?&tx_calendar_pi1%5Bf1%5D=1061&tx_calendar_pi1%5Bf4%5D=1519102800&cHash=b884377a19d2bc32558d8c3ae232bedf
新网址: www.domain.com/events/februarypowerlunch /
任何建议,任何人?
答案 0 :(得分:2)
请尝试以下代码:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/events/februarypowerlunch/
RewriteCond %{THE_REQUEST} ^(.*)\?(.*)\%(.*)\%(.*)=(.*)\%(.*)\%(.*)$
RewriteRule ^ /events/februarypowerlunch/? [R=302,L]
如果状态正常,请使用302
更改301
以获得永久重定向。
更新:
如果您只想匹配Event.211.0.html
,请执行以下操作:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/events/februarypowerlunch/
RewriteRule ^(e|E)vent\.211\.0\.html /events/februarypowerlunch/? [R=301,L]