簡體   English   中英

.htaccess:“RewriteRule ^ -”和“RewriteRule ^(.*)$ /$1”有什么區別?

[英].htaccess: What's the difference between "RewriteRule ^ -" and "RewriteRule ^(.*)$ /$1"?

我一生都無法弄清楚這兩個項目之間的區別,但即使在我目前的使用中,它們都解析為相同的URL,一個解析成功,但第二個給出了 403 錯誤。

RewriteRule ^ - [S=1]

RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1  [S=1]

假設它們解析為相同的 URL,這兩者之間有什么區別?

(根據https://htaccess.madewithlove.be/ ,它們都解析為完全相同的 URL。)

RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1  [S=1]

此規則將導致重定向循環,因為它只是在沒有任何條件或模式匹配的情況下重定向到自身。 即使此規則中沒有R標志但由於在目標中使用了絕對 URL, R=302也將被發送回客戶端。


RewriteRule ^ - [S=1]

這條規則意味着什么都不做(不采取行動)並跳過下面的一條規則。

暫無
暫無

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

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