2016-07-19 78 views
1

我嘗試在url的內部或內部捕獲多個斜槓,但不是在協議(http:// http://)後放置的那些斜槓(可能是兩個或更多) ,https://開頭,FTP://文件:///)在url中匹配多個斜槓,但在協議中沒有匹配

i的http://www.regexr.com/https://regex101.comhttp://www.regextester.com/嘗試了許多的研究結果相似SO-線程,像^(.*)//+(.*)$[^:](\/{2,})或,或^(.*?)(/{2,})(.*)$。但對我來說沒有什麼明確的。

它很奇怪,我找不到一個工作示例 - 這個目標不是這樣的rar。有人可以分享一個工作正則表達式嗎?

+0

什麼是正則表達式? –

+0

@anubhava:沒有:(測試我上面引用的三個站點,不起作用。試圖逃脫slahes - 同樣,不起作用。 –

+0

@WiktorStribiżew其對於apache/htaccess –

回答

2

這裏是你可以在你的站點根目錄的.htaccess使用規則從輸入網址,隨時隨地帶出多個斜線:

RewriteEngine On 

RewriteCond %{THE_REQUEST} // 
RewriteRule ^.*$ /$0 [R=301,L,NE] 

THE_REQUEST變量代表從您的瀏覽器Apache接收到原始請求和它doesn」在執行一些重寫規則後,它會被覆蓋。該變量的示例值是GET /index.php?id=123 HTTP/1.1

RewriteRule中的模式自動將多個斜槓轉換爲單個斜槓。

+0

以下看到我的回答,它只在網址的結尾工作嗎?你在網址中間的多個斜槓的規則有其他的樣子:http://stackoverflow.com/a/21513277/1992004 –

+1

明白了 - 謝謝 –