这是由 wordpress 生成的 .htaccess 文件,位于我的根目录中。
我需要修改/添加它,以将所有传入流量定向到 www.example.com,而不是 example.com。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
如果有人想解释以上所有内容的作用,我们也将不胜感激。
最佳答案
为了执行您所要求的操作,您需要添加:
RewriteCond %{HTTP_HOST} ^www.mysite.com$ [NC]
RewriteRule ^(.*)$ http://mysite.com/$1 [R=301,L]
您可以将其放在 <IfModule mod_rewrite.c>
之间RewriteBase
之后的括号
至于 WordPress 的 htaccess 代码的作用(没有测试):它似乎测试任何到文件和目录的直接链接,而不是通过 RewriteRule 传递它们,RewriteRule 通常会获取您的链接并将其发送到索引。 php
因此,如果您的链接指向 www.mysite.com/some/page,它会确保/some/page 不是直接文件链接或实际的 Web 目录,如果不是,则会传递请求到index.php,它解析它以显示正确的Wordpress页面。
关于.htaccess - 如何使用 mod_rewrite 将对 example.com 的请求重定向到 www.example.com?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1663481/