多站点wp-admin重定向循环

时间:2015-01-27 作者:Dan

我有一个子目录多站点设置,除了一个小问题外,一切都很好。。。

网站按以下结构设置:

http://domain.com/blogs/
http://domain.com/blogs/second/
http://domain.com/blogs/third/
如果使用以下选项,则可以访问管理面板:

http://domain.com/blogs/wp-admin/
http://domain.com/blogs/second/wp-admin/index.php
http://domain.com/blogs/third/wp-admin/index.php
但是如果您使用以下内容(就像wordpress在仪表板中所做的那样),那么它会给出一个重定向循环?

http://domain.com/blogs/second/wp-admin/
http://domain.com/blogs/third/wp-admin/
似乎在索引时有某种重定向。安装子文件夹时未指定php,这是什么原因?!


此多站点设置是在Wordpress 3.9.1或更早版本中设置的


.htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [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).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\\.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress

3 个回复
SO网友:Dan

不确定是什么原因导致了这一问题,但一个对我有效的(黑客)修复:

RewriteRule ^blogs/([_0-9a-zA-Z-]+)/wp-admin/$ blogs/$1/wp-admin/index.php [L]

SO网友:Alex Older

您的RewriteBase应该是/blogs/

通常,在进行网络设置时,它会告诉您您的。htaccess应该替换之前的所有WordPress规则。

SO网友:T.Todua

而不是:

RewriteBase /
您应该具备:

RewriteBase /blogs/
p.s.那在哪里.htaccess 是否放置?根目录中或中blogs 目录

结束

相关推荐

关于auth_reDirect()的说明

我发现,试图保护一些将非登录用户重定向到登录页面的页面的安全auth_redirect() 作用hereDocs说“检查用户是否登录,if not 它会将他们重定向到登录页面”。现在,如果是这样,为什么我需要预先准备if(!is_user_logged_in()) 使功能正常工作?应该不需要它,但如果我忽略它,我将永远被重定向。使用此功能的正确方法是什么?