2015-06-04 87 views
1

聯繫,我想重定向example.com/wp-admin到我的索引,使WP-管理員訪問雖然像example.com/adminWordPress的隱藏可溼性粉劑管理員與Nginx的

apache但切換到nginx的,我不知道如何做到這一點後,這樣做?

有沒有辦法做到這一點不改變任何WordPress的文件,但改變nginx的配置?
還需要訪問example.com/wp-admin/index.phpexample.com/admin/index.phpexample.com/wp-admin/posts.phpexample.com/admin/posts.php等。

+0

在我看來,如果你使用的插件,比它在你的WordPress會發現安全漏洞。 – Deep

+0

是的,我也試圖做 –

回答

0

你的意思是改變可溼性粉劑管理員的網址。然後你可以使用下面提到的插件 Wordpress Link

安裝插件後在settings-> Permalink我們可以改變WP-admin頁面slug爲我們需要的東西。

+0

在這裏添加一些細節。鏈接將在一段時間後消失 –

+0

安裝插件後在設置 - >永久鏈接,我們可以將WP-admin頁面slug更改爲我們需要的內容。 –

+0

在你的回答中更新 –

0

在我看來,如果你使用的插件,比它在你的WordPress會發現安全漏洞。

您可以使用下列步驟來創建自己的登錄要麼管理員的網址或其他如下:

1)添加常數wp-confing.php

define('WP_ADMIN_DIR', 'secret-folder'); 
define('ADMIN_COOKIE_PATH', SITECOOKIEPATH . WP_ADMIN_DIR); 

2)添加以下過濾器functions.php

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)添加下面一行的.htaccess文件,如果你使用的是Apache

RewriteRule ^secret-folder/(.*) wp-admin/$1?%{QUERY_STRING} [L] 

編輯Nginx的虛擬主機文件,並將以下內容:

location ~* /admin/ { 
    rewrite ^/admin/(.*) /wp-admin/$1 last; 
} 

做... !!!

現在,您的管理URL會像:http://www.yourdomain.com/secret-folder/

和下面的代碼將限制網址:site.com/wp-admin

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的虛擬主機文件和放置以下:

location ~* /admin/ { 
    rewrite ^/admin/(.*) /wp-admin/$1 last; 
} 

在情況下,如果你想從index.php文件重定向URL要重新管理

server { 
    index index.php; 

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

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

這樣做的另一個好處是nginx返回比重寫更快。

+0

當我使用'Appache'的時候有效,但現在我搬到了'NGINX'。那現在不行了。 –

+0

首選的方法是使用NO IF-STMTS:嘗試使用#登錄快捷方式 location〜*/login/{ rewrite ^/login /(.*)? /可溼性粉劑管理員/ $ 1; } – Deep

+0

它已經被應用。它僅適用於輸入'example.com/admin /'。沒有其他人喜歡,如果我們輸入'example.com/admin/index.php',它返回「未找到」 –

相關問題