宝塔环境下开启WordPress多站点(含伪静态)

为什么最近缙哥哥最先研究多站点了呢,由于多站点不用每次开个网站都要重新安装WordPress,而且最主要的是可以多个WordPress网站之间用户数据共享,这才是缙哥哥想要的。否则以多站点大量插件不兼容的问题,缙哥哥是一点也不喜欢!

开启 WordPress 多站点网络设置

首先建议全新安装一个站点,并在网站根目录下的 wp-config.php 添加如下代码:

  1. /* 开启 WordPress 多站点设置 - https://www.dujin.org/12501.html */
  2. define('WP_ALLOW_MULTISITE', true);

缙哥哥建议将上述代码复制到下方形貌的位置上面。

  1. /* 好了!请不要再继续编辑。请保留本文件。使用愉快! */

设置多站点网络

由于缙哥哥现实操作为子目录形式,在此着重解说。在上述“开启多站点设置”代码的下方,添加

  1. define('MULTISITE', true);
  2. define('SUBDOMAIN_INSTALL', false);
  3. define('DOMAIN_CURRENT_SITE', 'yourdomain.com');
  4. define('PATH_CURRENT_SITE', '/');
  5. define('SITE_ID_CURRENT_SITE', 1);
  6. define('BLOG_ID_CURRENT_SITE', 1);

Apache伪静态规则

在宝塔网站设置的伪静态中设置相关代码,将下方代码加入网站根目录中的 .htaccess 文件中,替换其他 WordPress 规则:

  1. RewriteEngine On
  2. RewriteBase /
  3. RewriteRule ^index\.php$ - [L]
  4.  
  5. # add a trailing slash to /wp-admin
  6. RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
  7.  
  8. RewriteCond %{REQUEST_FILENAME} -f [OR]
  9. RewriteCond %{REQUEST_FILENAME} -d
  10. RewriteRule ^ - [L]
  11. RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
  12. RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
  13. RewriteRule . index.php [L]

Nginx伪静态规则

由于 WordPress 默认提供的是 apache 的伪静态规则,以是这里缙哥哥行使 宝塔规则转换工具:Apache转Nginx 举行转换,获得如下规则:

  1. #ignored: "-" thing used or unknown variable in regex/rew 
  2. 	rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ permanent;
  3. if (-f $request_filename){
  4. 	set $rule_2 1;
  5. }
  6. if (-d $request_filename){
  7. 	set $rule_2 1;
  8. }
  9. if ($rule_2 = "1"){
  10. #ignored: "-" thing used or unknown variable in regex/rew 
  11. }
  12. 	rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /$2 last;
  13. 	rewrite ^/([_0-9a-zA-Z-]+/)?(.*\.php)$ /$2 last;
  14. 	rewrite /. /index.php last;

完整Nginx伪静态规则

然而,缙哥哥才添加后发现并不能接见网站,研究许久,发现需要在原本的 WordPress 伪静态规则之上举行添加,在此,列出完整的 WordPress 多站点Nginx伪静态规则,小同伴们可凭证本教程连系自己的现真相形举行调整。

  1. location / {
  2. 	index index.html index.php; 
  3. 	if (-f $request_filename/index.html){ 
  4. 		rewrite (.*) $1/index.html break; 
  5. 	} 
  6. 	if (-f $request_filename/index.php){ 
  7. 		rewrite (.*) $1/index.php; 
  8. 	} 
  9. 	if (!-f $request_filename){ 
  10. 		rewrite (.*) /index.php; 
  11. 	} 
  12.     #ignored: "-" thing used or unknown variable in regex/rew 
  13. 	rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ permanent;
  14. if (-f $request_filename){
  15. 	set $rule_2 1;
  16. }
  17. if (-d $request_filename){
  18. 	set $rule_2 1;
  19. }
  20. if ($rule_2 = "1"){
  21. #ignored: "-" thing used or unknown variable in regex/rew 
  22. }
  23. 	rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /$2 last;
  24. 	rewrite ^/([_0-9a-zA-Z-]+/)?(.*\.php)$ /$2 last;
  25. 	rewrite /. /index.php last;
  26.  
  27. } 
  28.  
  29. rewrite /wp-admin$ $scheme://$host$uri/ permanent;

缙哥哥建议另存为模板,好比命名为 WordPress多站点伪静态 都可以,以免每次都要设置一遍!
宝塔环境下开启WordPress多站点(含伪静态)
OK,大功告成,这时刻我们重新登录进入后台主站点设置牢固链接,效果发现默认增添了blog前缀:
宝塔环境下开启WordPress多站点(含伪静态)
这可不是想要的效果,我们在左上角我的站点 → 治理网络 → 站点(所有站点) → 主站点 → 编辑 → 设置内里找到 Permalink Structure 将前面的 /blog 删掉即可
宝塔环境下开启WordPress多站点(含伪静态)
记得在最下方点击保留,这样就可以完善去除 WordPress多站点 /blog 前缀,同时不会添加index.php,搞定收工!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3308869544
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有猫币奖励和额外收入!

主题镇 WP教程 宝塔环境下开启WordPress多站点(含伪静态) https://zhutizhen.com/14443.html

永远为用户服务的镇长!

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或联络我们。
查看详情

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务