从 example.com/forum 重定向到 example.ir/forum
redirect from example.com/forum to example.ir/forum
我要从
重定向
www.example.com/forum
或 example.com/forum
到
www.example.ir/forum
使用 htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.ir/forum$ [OR]
RewriteCond %{HTTP_HOST} ^example.com/forum$ [OR]
RewriteCond %{HTTP_HOST} ^www.example.com/forum$
RewriteRule (.*) http://www.example.ir/forum [R=301,L]
我做不到,我总是得到:
www.example.irforum
(没有斜线 /)已死 link.
您发布的代码不可能重定向到 www.example.irforum
(没有斜线)。事实上,您发布的代码不会执行任何操作(因为 条件 的 none 将匹配)。如果您看到重定向,则它可能是以前缓存的(错误的)重定向。
假设 example.com
和 example.ir
指向同一个地方,然后在您的 .htaccess 文件中尝试以下操作:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^forum(.*) http://www.example.ir/forum [R=302,L]
以上规则处理如下:
- 请求的URL-path(减去目录前缀)是否匹配
RewriteRule
模式^forum(.*)
?如果是,那么继续...
HTTP_HOST
服务器变量是否匹配 CondPattern。 IE。 Host
header 是 www.example.com
还是 example.com
?如果是,那么继续...
- 将请求重定向到
http://www.example.ir/forum
- 这是 RewriteRule
替换 。 </code> 指的是 <code>RewriteRule
模式 中的捕获组(第一个带括号的子模式) - 即。任何匹配 (.*)
.
如果 example.com
和 example.ir
指向不同的服务器,那么您不需要 RewriteCond
指令。
测试 302(临时)重定向,直到您确定它工作正常,然后更改为 301(永久)。或者,在禁用浏览器缓存的情况下进行测试。
HTTP_HOST
变量仅包含 HTTP Host
header。例如。 example.com
。这不包含路径信息。使用 RewriteRule
模式 来匹配 URL-path.
我要从
重定向www.example.com/forum
或 example.com/forum
到
www.example.ir/forum
使用 htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.ir/forum$ [OR]
RewriteCond %{HTTP_HOST} ^example.com/forum$ [OR]
RewriteCond %{HTTP_HOST} ^www.example.com/forum$
RewriteRule (.*) http://www.example.ir/forum [R=301,L]
我做不到,我总是得到:
www.example.irforum
(没有斜线 /)已死 link.
您发布的代码不可能重定向到 www.example.irforum
(没有斜线)。事实上,您发布的代码不会执行任何操作(因为 条件 的 none 将匹配)。如果您看到重定向,则它可能是以前缓存的(错误的)重定向。
假设 example.com
和 example.ir
指向同一个地方,然后在您的 .htaccess 文件中尝试以下操作:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^forum(.*) http://www.example.ir/forum [R=302,L]
以上规则处理如下:
- 请求的URL-path(减去目录前缀)是否匹配
RewriteRule
模式^forum(.*)
?如果是,那么继续... HTTP_HOST
服务器变量是否匹配 CondPattern。 IE。Host
header 是www.example.com
还是example.com
?如果是,那么继续...- 将请求重定向到
http://www.example.ir/forum
- 这是RewriteRule
替换 。</code> 指的是 <code>RewriteRule
模式 中的捕获组(第一个带括号的子模式) - 即。任何匹配(.*)
.
如果 example.com
和 example.ir
指向不同的服务器,那么您不需要 RewriteCond
指令。
测试 302(临时)重定向,直到您确定它工作正常,然后更改为 301(永久)。或者,在禁用浏览器缓存的情况下进行测试。
HTTP_HOST
变量仅包含 HTTP Host
header。例如。 example.com
。这不包含路径信息。使用 RewriteRule
模式 来匹配 URL-path.