我們有一個網站,其中內容由CMS生成。問題在於人們在沒有http://
的情況下向其網站添加鏈接,因此所有鏈接都以錯誤的方式生成。htaccess根據網址中的字符串重定向到域
爲如:http://www.example.com/ec/shefaliaxena/eventupdate/www.shefalisaxena.com
我想要做的是最後一個斜線後得到的數據,並檢查它是否是使用正則表達式有效的域,如果它是有效的域,然後將它重定向到該域或其他什麼都不做。
我能夠使用正則表達式([^/]+$
)在最後一個斜槓後提取數據,但想知道如何實現此重定向。
我可以很容易地做到這一點與編碼,但我想從.htaccess
文件本身,以便它不會增加服務器的負擔。
你試過這個明顯嗎? 'RewriteRule([^ /] +)$ http:// $ 1/[L,NC,R = 301]' –
感謝您的評論,我確實嘗試過,但此規則重定向了所有請求,我只想僅重定向這些請求在最後一個斜槓之後,如果有一個有效的域。如果它不是一個有效的域名,那麼它應該簡單地前進,不應該做任何事情。 – Raees
您需要確定使用哪些類型的域以便爲其創建良好的表達式。也就是說,你如何在瀏覽器中輸出網站的URL?你總是可以做某種檢查來查看'http://'是否存在,如果不存在,在顯示頁面上的URL之前添加它。這樣做可能是最好的,因爲你根本不需要重定向。 –