簡體   English   中英

子目錄中的Wordpress管理員無需子目錄即可重定向

[英]Wordpress admin in subdirectory redirects without subdirectory

我通過代理設置了wordpress。 我主站點上的URL是https:// DOMAIN / blog

這是為我的代理設置的apache:

 SSLEngine on
 SSLProxyEngine On
 SSLProxyVerify none
 SSLProxyCheckPeerCN off
 SSLProxyCheckPeerName 
 SSLProxyCheckPeerExpire off
 ProxyRequests Off
 ProxyPreserveHost On
 <Proxy *>
         Order deny,allow
         Allow from all
 </Proxy>
 ProxyPass /blog/ https://104.xxx.xx.xx/
 ProxyPassReverse /blog/ https://104.xxx.xx.xx/

一切正常。 當我轉到https:// DOMAIN / blog時 ,它應將我代理到https://104.xxx.xx.xx

WordPress的前端實際上運行完美,沒有任何問題。

問題出在管理員,當我轉到https:// DOMAIN / blog / wp-admin時 它登錄正常,但是將我重定向到https:// DOMAIN / wp-admin和404(因為未代理https:// DOMAIN / wp-admin

這是我對104.xxx.xx.xx的.htaccess

<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>

我已經嘗試過改變我能想到的每一種方式的.htaccess(設置RewriteBase / blog /,弄亂了我的重定向規則,以及其他一千種東西)。

謝謝你的幫助!

您已經在自己的注釋中找到了解決方案:“(由於未代理DOMAIN / wp-admin)”

wp-admin區域本身就是域子文件夾,因此必須被代理。 或者,您必須告訴您的代理將DOMAIN / wp-admin的所有請求重建為DOMAIN / blog / wp-admin。

在Blog機器上對.htaccess所做的更改無效,因為對DOMAIN / wp-admin的請求沒有被代理,也永遠不會到達您的Blog服務器。

我也剛剛從Bukky找到了一個更優雅的答案,我想分享: WordPress,nginx代理和子目錄:wp-login.php重定向到域

(您在其中編輯wp-config.php的那個)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM