我在.htaccess文件上进行了以下重写。它工作正常,但我无法将非www重定向到www。该网站还用作使用子域的多站点wordpress安装。所以我很困惑如何让主站点将非www重定向到www链接和页面重定向,而不是搞乱子域网站。
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteCond %{HTTP_HOST} ^abc\.com\.au
#RewriteRule ^(.*)$ http://www.abc.com.au/$1 [R=301,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
##### PAGE REDIRECTS ######
RewriteRule ^about\_abc\.htm$ "http://www.abc.com.au/company-profile/" [R=301,L]
RewriteRule . index.php [L]
</IfModule>
答案 0 :(得分:0)
您必须采取以下几个步骤:
编辑wp-config DOMAIN CURRENT SITE,如下所示:
define('DOMAIN_CURRENT_SITE', 'www.example.com'); //your new www one!
转到您博客的wp-admin并重置永久链接
您的RewriteRule很好,但您可以在其他网站中使用它更具动态性:
RewriteCond %{HTTP_HOST} ^example.com
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
或者,如果您的主机多域进入同一网络,请执行以下操作:
RewriteCond %{HTTP_HOST} ^(example1|example2|exampleN).com
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
如果您在子域中设置了以前的其他博客,那么您可以放心使用,因为它们与没有www的上一个主域链接。我个人测试了这个配方到上个月迁移到www主域的多域网络。