如果域不正确,则htaccess重定向

Cla*_*las 12 apache .htaccess redirect

我对某些域名有疑问.我需要将错误的网址重定向到新的正确域名.

伪代码示例:

if (domain != "www.correctdomain.com")
    redirect("www.correctdomain.com")
Run Code Online (Sandbox Code Playgroud)

谢谢

JAL*_*JAL 33

您可以使用If指令执行此操作...

<If "%{HTTP_HOST} != 'www.example.com'">
Redirect / http://www.example.com/
</If>
Run Code Online (Sandbox Code Playgroud)

或mod_rewrite.请参见http://httpd.apache.org/docs/current/rewrite/remapping.html

RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/?(.*)         http://www.example.com/$1 [L,R,NE]
Run Code Online (Sandbox Code Playgroud)

  • 什么是`RewriteCond%{HTTP_HOST}!^ $`指令呢?如果主机不是空的? (3认同)
  • 澄清已接受答案的注释:如果您运行的是 Apache 2.4.x,则只能使用 `&lt;IF&gt;` 指令 (2认同)
  • 您还可以使用RewriteCond%{HTTP_HOST}!^(。*)example \ .com [NC]来包含任何子域。 (2认同)

Bas*_*ler 5

最好在 SEO 中进行 301 重定向:

RewriteCond %{HTTP_HOST} ^www.example.com(.*)$ [NC]
RewriteRule ^(.*)$ http://example.com$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)