好的,所以我想在我的网站上实现301重定向..这是我到目前为止的代码
RedirectMatch 301 ^/games/(.*)/(.*)$ http://mysite.com/apps/$1/$2
问题是旧网站上的第二个参数使用下划线(ex brain_puzzle),我试图将其重定向到“脑难题”。例如:
http://mysite.com/games/brain_puzzle/4-pics-1-word/
将重定向到
http://mysite.com/apps/brain-puzzle/4-pics-1-word/
知道我怎么能这样做吗?
答案 0 :(得分:0)
如果仅仅是针对特定情况,您可以执行this answer中的操作:
RedirectMatch 301 ^/games/brain_puzzle/(.*)$ http://mysite.com/apps/brain-puzzle/$2
如果它更通用(不同于brain_puzzle
的字符串),this answer的某些变体可以帮助您。
答案 1 :(得分:0)
通过httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放在.htaccess
目录下的DOCUMENT_ROOT
中:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteRule ^(games)/([^_]+)_(.*)$ /$1/$2-$3 [L,NC]
RewriteRule ^games/([^/_]+)/([^/_]*)/?$ /apps/$1/$2 [L,NC,R=301]
在执行301重定向之前,此代码将递归替换所有带有连字符的下划线。