Home >  > WordPress多站点教程及占内存测试

WordPress多站点教程及占内存测试

0

最近花了两个晚上折腾Wordpress多站点,期间各种意外,比如服务器内存不足、FTP无法登陆、Xshell无法使用、服务器需要设置白名单等,好在基本上也搞定了。

一、解析域名

二、停用所有插件
三、开启多站点
在config.php中添加以下代码

 define('WP_ALLOW_MULTISITE', true);    // 开启多站点功能

 define( 'COOKIE_DOMAIN', '' );         // 清除cookie限制,否则开启多站点后登录网站后台会提示“错误:Cookies被阻止或者您的浏览器不支持。要使用WordPress,您必须启用Cookies。”

注意:不要添加到最后,您应该将其添加到下面到代码之前:

if ( !defined('ABSPATH') )

        define('ABSPATH', dirname(__FILE__) . '/');

require_once(ABSPATH . 'wp-settings.php');

添加完成后,刷新后台,再次登录应该可以看到“工具”菜单下面多了一个“配置网络”选项。

四、确定您开启多站点的方式
WordPress有两种开启多站点的方式:子域名 和 子目录

五、如果您使用的是子域名方式,检查您的WordPress域名
请确保您的WordPress域名设置为根域名,即不带www的域名,如:http://a.com。注意,要加http。

设置方法:后台菜单栏中找到“设置->常规”,修改其中的“WordPress地址(URL)”。注意与“站点地址(URL)”的区别,“站点地址(URL)”表示浏览器输入什么网址才能访问本站点。

六、开启多站点


七、添加新站点
修改好文件之后,重新进入登录后台,可以发现左上角多了“我的站点”菜单,其中有“管理网络”选项,点击它进入网络的管理界面。

Updated on Mar-27-2020
1.泛域名
昨天花了一个晚上,还没有搞定泛域名解析,其实流程都对,没理由不成功的。今天顺着思路又重新捋了一遍,发现问题出在西数服务器的白名单没有设置成功,导致泛域名无法访问。
另外,在解决问题的过程中我还对伪静态进行了修改,不知这个到底有没有发生作用,暂时留存吧:

location / {
	index index.html index.php; 
	if (-f $request_filename/index.html){ 
		rewrite (.*) $1/index.html break; 
	} 
	if (-f $request_filename/index.php){ 
		rewrite (.*) $1/index.php; 
	} 
	if (!-f $request_filename){ 
		rewrite (.*) /index.php; 
	} 
    #ignored: "-" thing used or unknown variable in regex/rew 
	rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ permanent;
if (-f $request_filename){
	set $rule_2 1;
}
if (-d $request_filename){
	set $rule_2 1;
}
if ($rule_2 = "1"){
#ignored: "-" thing used or unknown variable in regex/rew 
}
	rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /$2 last;
	rewrite ^/([_0-9a-zA-Z-]+/)?(.*\.php)$ /$2 last;
	rewrite /. /index.php last;
    
} 

rewrite /wp-admin$ $scheme://$host$uri/ permanent;

Updated on Mar-28-2020
1.在服务器上上面的代码不用加可以正常访问。
2.需要在宝塔添加站点那里添加域名那里加上“xxx.com”,否则这个xxx.com还是无法访问的。
3.泛解析只需要在域名商、宝塔添加域名那里加上“*.xxx.com”,在wordpress建立a.xxx.com网站后,就可以访问了。
网站提示备份

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
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]
RewriteRule . index.php [L]

2.主题
解决这个问题之后,后来又发现wordpress多站点无法更换主题,后来找了半天,终于找到了。应该进入“我的站点--管理网络--仪表盘中”下面的主题进行修改。在这里启用主题之后,再到各个站点启用。

3.Wordpress占用内存过大的问题
我使用的是1核1G的服务器,之前跑两个django网站内存占用都只有60%多,现在跑一个网站内存占用都到了80%多,而且我现在自己测试就发现经常MySQL死掉,简直无法用了。

另外,在网上看了一下,别人也反馈过这个问题,有人说1G内存的服务器装wordpress内存占用100%。

后来将服务器上的其他两个网站删除,只留下了一个wordpress网站,暂时可用。

另外,我在另一个只有512M的vultr.com服务器上用lnmp装了一个wordpress,内存只占到215M。

在西数1G的服务器上用宝塔装了一个wordpress(开了多站点),内存占到了756。

参考:
https://blog.csdn.net/lypblog/article/details/83960398

https://www.fujieace.com/wordpress/network-config.html

https://www.bilibili.com/video/av38974943?from=search&seid=10445512335332280729

七、关于插件
只需要在主站上传并激活插件,在所有的子站就可以使用了。

八、后台无法登陆
今天发现主站的后台无法登陆了,在登陆时显示跳转到了
http://www.xxx.net/wp-login.php?redirect_to=http%3A%2F%2Fmaguang.net%2Fxb%2Fwp-admin%2F&reauth=1

后来在网上搜索了一下,使用域名 /wp-admin/index.php 登录后台就可以了。

九、wordpress多站点的数据库是这样的
应该为每一个分站建立了一套数据库。

本文暂无标签

发表评论

*

*