0

因此,我将我的一个域(我们将其称为 domain.com)重定向到我的一个子目录(我们将其称为文件),并且我正在尝试实现将减少 index?page= 的链接,强制www,并且所有页面都有尾部斜杠。

目前我有

domain.com/index?page=about 或 domain.com/splash

我想要 www.domain.com/about/ 或 www.domain.com/splash/

这是我到目前为止所拥有的:

RewriteEngine On

RewriteCond %{HTTP:Host} ^(?:www\.)?domain\.com$ 
RewriteCond %{REQUEST_URI} !^/file/ 
RewriteRule ^(.*) file/$1 [NC,L,NS]

ErrorDocument 404 http://domain.com/splash

如果您看不出来,我对Apache并不精通,哈哈。

4

1 回答 1

0

我会去:

RewriteEngine On

RewriteCond   %{HTTP:Host}        !^www\.domain\.com$
RewriteRule   ^(.*)$              http://www.domain.com/$1 [L,R=301]

RewriteCond   %{REQUEST_FILENAME} !-f
RewriteRule   ^([\w\-]+)$         /$1/ [L,R=301]

RewriteCond   %{REQUEST_FILENAME} !-f
RewriteRule   ^(.*)$              /index.php?page=$1       [L]

ErrorDocument 404                 /splash/

在调试阶段小心使用302(临时)重定向而不是301(永久)重定向,因为您的浏览器会“记住”永久重定向而不考虑您网站的新配置。

于 2013-06-27T23:45:50.387 回答