首先,如果有類似的執行緒,我很抱歉,但我無法弄清楚以下問題的正確方法是什么:
我不知道如何正確更改我的 .htaccess 檔案,以便以下條件起作用:
我在一個域下有 2 個獨立的 WordPress 實體。(可以說:example.com)
- 舊實體托管在這里:example.com/old/
- 新實體托管在這里:example.com/new/
我訪問 example.com 時的當前行為:
- 當我訪問 example.com 時,它會重定向到舊實體。瀏覽器顯示:example.com/old
期望的行為,當我訪問 example.com 時:
- 它重定向到 example.com/new/
- 從 url 隱藏子檔案夾路徑 (/new),以便在地址欄中只有 example.com 在中間可見(或除 /new/ 之外的任何其他部分)。
我的第一種方法是在 /old/.htaccess 中添加以下行:
Redirect 301 / https://example.com/new/
但是隨后,它將 example.com 重定向到:example.com/new/old/ 導致 404。由于 .htaccess 檔案在 /old/ 和 /new/ 中看起來有點相同,我無法弄清楚,具體定義在哪里, example.com/ 默認重定向到 /old/。
以下是每個實體和根檔案夾的 .htaccess 內容:
.htaccess-content / (根)
# -FrontPage-
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*
<Limit GET POST>
order deny,allow
deny from all
allow from all
</Limit>
<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>
.htaccess-content /old/(舊實體)
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/
RewriteRule .* - [CO=wordpress_test_cookie:WP Cookie check:%{HTTP_HOST}:1440:/]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /old/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /old/index.php [L]
</IfModule>
# END WordPress
.htaccess-content /new/(新實體)
#BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /new/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /new/index.php [L]
</IfModule>
# END WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
Header always set Content-Security-Policy "upgrade-insecure-requests;"
</IfModule>
非常感謝任何幫助。
謝謝你。
uj5u.com熱心網友回復:
您需要RewriteRule在您的old/. htaccess而不是使用中使用Redirect. RewriteRule 可以將請求從您的old目錄映射到new目錄,而無需更改 URL。
RewriteEngine On
RewriteCond %{REQUEST_URI} !/new [NC]
RewriteRule ^(.*)$ /new/$1 [L]
這應該放在您/root目錄中的 htaccess 中,并記住將其放在頂部或其他重寫指令之前。
還可以通過settings->general在您的 WordPress 儀表板中更改“WordPress 主頁 URL”和“站點地址” 。您可以https://example.com用作 WordPress 主頁 URL 和https://example.com/newWordPress 站點地址。
讓我知道它是如何為您作業的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/408359.html
標籤:
