我想在旧网站上重定向以下路径:
/apps
/apps/about
/apps/everything_else
/site
使用以下RewriteRule到另一个子域:
RewriteRule ^site/?$ http://site.newsite.com [R=301,NC,L]
但没有任何反应,这条规则有什么不对吗?另外,如何将应用添加到同一规则中?
以下是否有效:
RewriteRule ^site/?|apps(/.)?$ http://site.newsite.com [R=301,NC,L]
答案 0 :(得分:1)
你可以试试这个:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/(apps|site).* [NC]
RewriteRule .* http://site.newsite.com/ [R=301,L]
静默地映射:
http://site.oldsite.com/apps
或
http://site.oldsite.com/apps/anything
或
http://site.oldsite.com/site
或
http://site.oldsite.com/site/anything
要:
http://site.newsite.com/
没有任何内容传递给替换网址,因为OP没有在问题中提及该要求。
假设字符串apps
和site
已修复。
对于静态映射,请将[R=301,L]
替换为[L]