0

我想要

  1. 重定向 domain.com -> www.domain.com
  2. 重定向 www.domain.com -> www.domain.com/文件夹
  3. 重定向 www.domain.com/folder -> www.domain.com/folder
  4. 重定向 www.domain.com/folder2 -> www.domain.com/folder2

使用 htaccess 重定向。

但我只能为 www 部分编写代码

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com[nc]
RewriteRule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

有人可以帮我吗?

4

1 回答 1

0

我会为每个文件夹制作一个文件,看起来像这样。

domain.com 根目录.htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^/?$ http://www.domain.com [R=301,NC,L]

www.domain.com 根目录.htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com [NC]
RewriteRule ^/?$ http://www.domain.com/folder [R=301,NC,L]

文件夹.htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.domain\.com [NC]
RewriteRule ^/?folder$ http://www.domain.com/folder1 [R=301,NC,L]

我想你应该已经明白了。因为我自己从来没有这样做过,所以我不能 100% 确定它是否会.htaccess在重定向完成后停止处理文件。如果不是,你肯定会在folder2.

编辑:添加L,因为我在我的第一个版本中错过了它。由于我完全错过了第一个重定向步骤,因此做了一些更改。我认为这个想法仍然很清楚。:)

于 2013-09-12T05:19:36.047 回答