mod_rewrite的 - 如何的301重定向旧网址到一个新的
-
12-09-2019 - |
题
我要抓住我的一些网站的旧网址,并做了301重定向到新的,因为他们已经编入索引,我们不想改变后失去相关性。旧的URL其实很丑陋,由于某种原因,一切我尝试做重写它不工作。在这里它是:
http://www.mywebsite.com/ExibeCurso.asp?Comando=TreinamentoGeral&codCurso=136&Titulo=Como%20Estruturar%20um%20Sistema%20Gerencial%20de%20Controles%20Organizacionais,13
基本上,我需要把它翻译成这样的:
http://www.mywebsite.com/curso/136
从旧的URL我需要检查,如果用户键入“ExibeCurso.asp”;然后我知道我必须在这里送他:/ CURSO。我还必须抓住那是在查询字符串参数“codCurso”(136)的整数。什么是正则表达式我必须用这个。我使用的ISAPI_Rewrite 3,这在IIS基本实现htaccess的,所以应该在语法方面没有差别。感谢。
解决方案
尝试这样的规则:
RewriteCond %{QUERY_STRING} ^([^&]*&)*codCurso=([0-9]+)(&.*)?$
RewriteRule ^/ExibeCurso\.asp$ /curso/%2? [L,R=301]
但我不知道ISAPI重写是否需要模式,开始以斜线。
其他提示
关闭我的头顶,这样的事情应该工作:
RewriteRule ^ExibeCurso.asp(.*)$ http://www.mywebsite.com/curso/$1 [L,R=301]
这将至少所述流量发送到/ CURSO /附接的所有参数。也许这是最好的从那里处理它。
不隶属于 StackOverflow