我有一個網站設置,用戶可以聲稱「/頁」,如
mywebsite.com/example1或mywebsite.com/example2。重定向如果URL只包含字母或數字
如果用戶鍵入一個不存在的URL,它顯然會重定向到一個404錯誤頁面。但是,我希望如果用戶輸入一個不存在的包含的網址只是字母或數字(無符號或類似),然後,它將被重定向到我創建的頁面,指出「url available!」。 。
我配置了一個這樣的.shtml頁面,以便輸入一個有效的URL時,它顯示了這一點:
<h1>available</h1>
<div>mywebsite.com<!--#echo var="REQUEST_URI" --> is available.</div>
不過,我不知道如何設置了「有效性「部分。我希望它只顯示這個頁面,如果輸入的URL只包含數字或字母,沒有符號。換句話說,
mywebsite.com/@user goes to 404 error page
mywebsite.com/u$er goes to 404 error page
mywebsite.com/user_ goes to 404 error page
mywebsite.com/user redirects to my custom page
mywebsite.com/user123 redirects to my custom page
mywebsite.com/123 redirects to my custom page
我現在有它設置在404錯誤頁面是一個指出「mywebsite.com /(...)可用」,但是這會導致問題,因爲它會說幾乎任何東西都可用。我曾嘗試使用RewriteRule ^(.*);(.*)$ /error.shtml [L,R=301]
阻止某些字符,其中每個RewriteRule檢測url是否包含另一個符號,並將301重定向到我的自定義錯誤頁面。但是,此代碼不能重定向所有符號,例如,如果我把RewriteRule ^(.*)$(.*)$ /error.shtml [L,R=301]
重定向到URL中美元符號的任何用途,它會給我一個服務器錯誤,因爲「$」是保留字符。 (除非有我不知道的解決方法)!所以我反而採用這種方法,而不是阻止符號,只是只有允許字母和數字。
非常感謝幫助!需要!
完美的作品!非常感謝! – Cris
Hi @Peter有沒有方法可以包含句點和下劃線? – Cris
@Cris是的,現在它也可以使用句點和下劃線 –