如何在WordPress多站点中禁用除网络登录以外的所有登录?

时间:2018-11-17 作者:Stack Programmer

我有N WordPress多站点中的站点数。我想限制个人网站登录,即:。,

  • http://www.example.com/site1/wp-admin
  • http://www.example.com/site2/wp-adminhttp://www.example.com/wp-admin. 如果可能,所有其他登录URL应重定向到各自的主页。是否有任何功能或.htaccess 实现这一目标的规则?

    .htaccess 文件:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    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
    

1 个回复
SO网友:MrWhite

您可以在您的.htaccess 文档根目录中的文件(在WordPress前端控制器之前,即# BEGIN WordPress 块):

RewriteRule ^([\\w-]+/)wp-admin /$1 [R,L]
这将重定向/<site>/wp-admin/<site>/ - 其中,站点名称可以由任何字符组成a-z, A-Z, 0-9, _-.

http://www.example.com/wp-admin 可以正常访问。

是的,它在工作,如果wordpress在子目录中,它就不工作了。

如果WordPress.htaccess 文件位于子目录中,则需要修改指令,如下所示:

RewriteRule ^wp-admin /subdirectory/ [R,L]
但是,您的设置仍不清楚。你有多个.htaccess 不同WordPress安装的文件?单个多站点.htaccess 在子目录中,而不是其他.htaccess 文件?

结束

相关推荐

帮助查找要从unctions.php移出的一些代码

我被告知下面的代码包含恶意软件,这是托管人员发给我的。但我不知道这会在哪里,也不知道这意味着什么。我是一个初学者,所以如果听起来很愚蠢,我很抱歉。功能。php/home/sites/3a/e/e806688333/public\\uhtml/wp-content/themes/listify/functions。php通用。文件收到目录0<?php if (isset($_REQUEST[\'action\']) && isset($_REQUEST[\'password\'