我有这样的链接:
http://www.example.com/blog/something/article-name/
我想将其重新写入:
http://www.example.com/article-name/
“某事”是可变的,所以我不能只使用RedirectMatch 301 ^/blog/something/(.*)$ http://www.example.com/$1
我搜索了我能找到的各种htaccess重定向的文章,没有应用到我的scenerio,即1个固定文件夹(博客)和1个变量文件夹(某些东西 - 可能是任何东西)。我试过这个,它也不起作用:
RedirectMatch ^/blog/(.*)/(.*)$ http://www.example.com/$2
....只是给了我同样的东西减去博客。
请帮忙!
答案 0 :(得分:1)
您的问题有点不清楚,因为您指的是重写和重定向。在重写的情况下,巴拿马杰克是对的。如果您正在寻找用于重写的较短URI,则服务器无法简单地猜测something
部分。
但是,如果您尝试重定向(例如,您已更改了CMS),则可以使用以下内容。下面的mod_rewrite
规则会将/blog/variable/article
重定向到/article
并进行302临时重定向。
RewriteEngine On
RewriteRule ^blog/([^/]+)/([^/]+)/?$ /$2 [R=302,L]
如果您希望将重定向设为永久性并通过浏览器进行缓存,请将302
更改为301
。