我的測試網址是:https://mydomains.com/wp-content/uploads-webpc/uploads/2022/05/store-riil-x-1-300x404.jpg.webp
我的 htaccess 規則如下:
RewriteEngine On RewriteCond %{HTTP_HOST} ^mydomains\.com [NC] RewriteRule ^(.*)$ https://www.mydomains.com/ [L,R=301]
當我在 https://htaccess.madewithlove.com/ 中測試規則時,結果如下:
RewriteCond %{HTTP_HOST} ^aspirecig\.com$ [NC]
#滿足此條件。
RewriteRule ^(.*)$ https://www.aspirecig.com/$1[L,R=301]
#新網址為 https://www.aspirecig.com/wp-content/uploads-webpc/uploads/2022/12/black-1.jpg.webp
測試已停止,將進行重定向,狀態代碼為 301
瀏覽器的url實際上被重寫為:https://www.mydomains.com/uploads-webpc/uploads/2022/05/store-riil-x-1-300x404.jpg.webp
為什麼我丟失了「wp-content」?造成這種情況的可能原因有哪些?有人可以幫我嗎?非常感謝
當您在 .htaccess(或
)中使用 RewriteRule 時,您隱含比較的字串上的一些前導部分會被刪除。在 DocumentRoot 中,它是前導「/」。更深的一個目錄,例如文檔根目錄中的 wp-content/,它也會引導您到那裡的目錄刪除。
因此,如果此 htaccess 位於
$docroot/wp-content
中,則/wp-content
將被刪除。如果您想返回完整的原始 URL,請避免此處的 $1 並使用%{REQUEST_URI}
。