以适当的方式从.htaccess中的非www重定向到www站点

时间:2011-05-14 10:31:01

标签: php wordpress .htaccess

我想将非www前缀页面重定向到www前缀页面。

但是,我必须在vanilla论坛中这样做,因为在htaccess中已经很少有重定向规则。

我在其上方添加了重定向代码。我想知道这是否正确?它工作正常,但我觉得性能问题,因为论坛加载速度很慢。


    <IfModule mod_rewrite.c>
       RewriteEngine On
       RewriteBase /forum
       RewriteCond %{HTTP_HOST} ^gtricks.com [NC]
       RewriteRule ^(.*)$ http://www.gtricks.com/forum/$1 [L,R=301]

   # Certain hosts may require the following line.
   # If vanilla is in a subfolder then you need to specify it after the /. 
   # (ex. You put Vanilla in /forum so change the next line to: RewriteBase /forum)
   # RewriteBase /forum
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteRule ^(.*)$ index.php\?p=$1 [QSA,L]

任何人都可以帮我说这不是标准或更好的方法。

PS:论坛不在根,而是在名为'forum'的文件夹中。从根本上已经有了wordpress博客。

3 个答案:

答案 0 :(得分:2)

这是我的重定向代码:

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

看起来一样。我不认为这是导致性能问题的原因。

答案 1 :(得分:0)

无论您做了什么,都是将非www页面重定向到.htaccess级别的www页面的标准方法。没有其他更好的方法。

答案 2 :(得分:0)

您不需要编辑htaccess。您可以通过在“设置”中指定首选网址来更安全地完成此操作。

enter image description here

如果您有domain.com并希望将用户重定向到www.domain.com,请在设置中保留www.domain.com,反之亦然。 Wordpress将管理www重定向。