簡體   English   中英

htaccess redirectmatch正則表達式避免無限循環

[英]htaccess redirectmatch regular expression to avoid infinite loop

我的某個地方的鏈接格式錯誤,該鏈接會將人們發送到我的站點地圖,但發送到類似

www.example.com/sitemap.php'"abc def 

等等。然后向他們顯示斷開的鏈接。

當我查找錯誤的鏈接時,我寫了301這樣的代碼,使到該頁面的所有流量都被301處理並清除:

RedirectMatch 301 ^sitemap.php(.*) http://www.example.com/sitemap.php

但是,這給了我一個“ 301s太多”的錯誤,因為site.com/sitemap.php與表達式匹配並且被循環了。 如果根本不存在(即URL僅以“ .php”結尾),是否可以使用正則表達式代替(。*)匹配的正則表達式?

只需使用以下規則:

RedirectMatch 301 ^/(sitemap\.php).+ /$1

並清除瀏覽器緩存。 請注意使用.+ (任何字符中的1個或多個)代替.* (0個或多個字符)

暫無
暫無

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

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