首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Wordpress Hide wp-admin to admin with Nginx

Wordpress Hide wp-admin to admin with Nginx
EN

Stack Overflow用户
提问于 2015-06-04 14:10:15
回答 3查看 5.2K关注 0票数 1

我想将example.com/wp-admin重定向到我的索引,并使可湿性粉剂管理员可以通过类似example.com/admin的东西访问。

我在apache中做了这件事,但是在切换到nginx之后,我不知道该怎么做?

有没有办法在不改变任何wordpress文件的情况下改变nginx的配置?

还需要访问作为example.com/admin/index.phpexample.com/wp-admin/index.php,作为example.com/admin/posts.phpexample.com/wp-admin/posts.php等。

EN

回答 3

Stack Overflow用户

发布于 2015-06-04 14:53:09

在我看来,如果你使用插件,那么它会在你的WordPress中发现安全漏洞。

您可以使用以下步骤创建您自己的admin登录URL,也可以执行以下操作:

1.)将常量添加到wp-confing.php

代码语言:javascript
复制
define('WP_ADMIN_DIR', 'secret-folder');
define( 'ADMIN_COOKIE_PATH', SITECOOKIEPATH . WP_ADMIN_DIR);

2.)将以下筛选器添加到functions.php

代码语言:javascript
复制
add_filter('site_url',  'wpadmin_filter', 10, 3);

function wpadmin_filter( $url, $path, $orig_scheme ) {
  $old  = array( "/(wp-admin)/");
  $admin_dir = WP_ADMIN_DIR;
  $new  = array($admin_dir);
  return preg_replace( $old, $new, $url, 1);
}

3.)如果您使用的是Apache,请将以下行添加到.htaccess文件中

代码语言:javascript
复制
RewriteRule ^secret-folder/(.*) wp-admin/$1?%{QUERY_STRING} [L]

编辑Nginx虚拟主机文件并放置以下内容:

代码语言:javascript
复制
location ~* /admin/ {
  rewrite ^/admin/(.*) /wp-admin/$1 last;
}

完成...!

现在您的管理URL将如下所示:http://www.yourdomain.com/secret-folder/

下面的代码将限制URL: site.com/wp-admin

代码语言:javascript
复制
add_action('login_form','redirect_wp_admin');

function redirect_wp_admin(){
  $redirect_to = $_SERVER['REQUEST_URI'];

  if(count($_REQUEST)> 0 && array_key_exists('redirect_to', $_REQUEST)){
    $redirect_to = $_REQUEST['redirect_to'];
    $check_wp_admin = stristr($redirect_to, 'wp-admin');
    if($check_wp_admin){
      wp_safe_redirect( '404.php' );
    }
  }
}

编辑:编辑Nginx虚拟主机文件,并放置以下内容:

代码语言:javascript
复制
location ~* /admin/ {
  rewrite ^/admin/(.*) /wp-admin/$1 last;
}

如果您想要将url从index.php重定向到管理员位置

代码语言:javascript
复制
server {
  index index.php;

  if ($request_uri ~* "^(.*/)index\.php$") {
    return 301 $1;
  }

  location = /admin/index.php {
    return 301 $scheme://www.example.com/admin/;
  }
}

这样做的另一个好处是,nginx的返回速度比重写快。

票数 2
EN

Stack Overflow用户

发布于 2015-06-04 14:29:51

您的意思是更改wp-admin的url。然后,您可以使用下面提到的Wordpress Link插件

在设置->Permalink下安装插件后,我们可以将WP-admin页面段塞更改为我们需要的。

票数 0
EN

Stack Overflow用户

发布于 2015-06-04 14:42:34

要更改管理url,请尝试使用以下插件https://wordpress.org/plugins/wordfence/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30636207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档