我最近在.htaccess上为我当前运行的博客多站点(Wordpress博客位于“mysite.com/home/”目录下)添加了301重定向非WWW到WWW,它们似乎在所有更改后都正常工作以下3个文件:
的.htaccess
# Redirect Non-WWW to WWW
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite\.com\home
RewriteRule ^(.*)$ http://www.mysite.com/home/$1 [R=301,L]
# END Redirect Non-WWW to WWW
RewriteEngine On
RewriteBase /home/
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
WP-CONFIG.PHP
从
更改define('DOMAIN_CURRENT_SITE', 'mysite.com');
更改为
define('DOMAIN_CURRENT_SITE', 'www.mysite.com');
FUNCTIONS.PHP(主要主题)
从
更改update_option('siteurl','http://mysite.com/home');
update_option('home','http://mysite.com/home');
global $oswcPostTypes;
更改为
update_option('siteurl','http://www.mysite.com/home');
update_option('home','http://www.mysite.com/home');
global $oswcPostTypes;
我可以像往常一样查看我的网站并登录每个网站信息中心但是无法使用网络标签:我的网站>网络管理员>仪表板,站点,用户。有没有其他地方需要更改,以便能够在多站点上使用网络选项卡而不使用任何插件或更改数据库中的所有数据?
答案 0 :(得分:3)
您的重定向似乎状况不佳:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite\.com\home
RewriteRule ^(.*)$ http://www.mysite.com/home/$1 [R=301,L]
%{HTTP_HOST}
是“Host:”标头请求中的内容,它只包含一个主机名(有时是一个端口),你不能在那里有URI路径。尝试将其更改为:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite\.com
RewriteRule ^/?home/(.*)$ http://www.mysite.com/home/$1 [R=301,L]
答案 1 :(得分:0)
您的价值" $ current_blog->域名,$ current_site->域名"必须与" $ current_blog->路径,$ current_site->路径"相同在/wp-admin/network/admin.php第20行。
检查域和路径列中的* _wp_blogs表。
将您的域名值从mysite.com更新到www.mysite.com