無法進入 wp-admin 頁面(cloudflare、nginx)

無法進入 wp-admin 頁面(cloudflare、nginx)

我有一個 WordPress 網站,在 cloudflare DNS 後面的 Nginx 上運行。我已對 nginx.conf 中的所有 cloudflare ip 使用“set_real_ip_from”。當我嘗試訪問我的網站時,我可以在日誌中看到我的真實 IP。我已將預設的 WordPress 管理員登入目錄從 wp-admin 變更為我的目錄名稱。我只希望允許特定的 ip 登入我的 WordPress,但在我的網站配置中,伺服器區塊:location ~ /(wp-admin|wp-login|mydirectory) { allow my.real.ip; deny all; return 404; } 我似乎無法訪問WordPress 管理員,我得到404。輸入有事嗎 ?我在這個論壇上瀏覽了一些不同的變體,但似乎沒有一個在起作用。它們要么允許我訪問 wp-admin,但任何人都可以訪問,要么阻止所有人。

編輯 不幸的是,無論我嘗試什麼,我都無法讓它工作,所以我所做的就是刪除位置〜/(wp-admin | wp-login | mydirectory)區塊,重新加載nginx配置,登入wordpress,停用wp -admin更改目錄插件,然後返回並重新添加location ~ /(wp-admin|wp-login|mydirectory) 區塊,我添加了location ~ .php$ { 正如@Michael Hampton 所建議的那樣,現在我可以通過以下方式造訪我的WordPress 管理頁面使用「wp-admin」網址。不知道為什麼它不能與自訂 url 一起使用,但我想這會起作用,因為 nginx 會阻止其他任何人嘗試訪問它,但知道為什麼它不起作用會很有趣:/

答案1

您得到 404 是因為您專門為所有符合該請求的請求請求 404 location

    return 404;

如果您想收到 404 以外的任何內容,則需要刪除此語句。

此外,您需要location在其中放置一個嵌套location來處理 PHP 檔案。

location ~ /(wp-admin|wp-login|mydirectory) {
    ...
    location ~ .php$ {
        ....

相關內容