在前篇文章,我拿了Cakephp的rewrite規則來作一些基本的說明, 因此在接下來幾篇文章中,會針對幾個情境來試著實作, 請各位看看吧,如果有錯的地方也請多多指教! 案例一: 某案主:我的網站是用PHP寫成的,因此我的網站都會有像這樣的網址: http://xxx.com/index.php 可是我不想讓別人知道這個網站是用php的, 所以我想要把.php改成.do(通常是用java之類的網頁), (像是http://xxx.com/index.do) 當然啦,如果你能把.php除掉的話也可以啦! (像是http://xxx.com/index) 針對某案主的要求, 我們可以先擬出以下基本的rewrite規則: 1<IfModule mod_rewrite.c> 2 RewriteEngine On 3 4 RewriteRule ([a-zA-Z0-9_]*).do $1.php [L] 5</IfModule> (以上內容要儲存在.htaccess檔案中) 這樣當訪客輸入http://xxx.com/index.do時, Apache會導向index.php。 這裡解釋一下第四行的內容, 該行內容是指: 當看到符合使用英文大小寫字母、數字和底線的.do時,即指定給該檔名的.php檔處理 這是最基本的狀況, 萬一某業主手賤替某個檔取了 ad@google.php 時又該怎麼辦? 你可以在這行([ a-zA-Z0-9_ ]*)的粗體字後加上一個@, 如果有新狀況的話,就依此類推地給它加下去! 但是請注意,某些字碼如&、 等, 因為是需要進行HTML脫逸或是正規式的表示字元, 在使用上可能會有問題,使用前請務必小心, 當然啦,替檔案命名時絕對不要用這些字元會是最好的方法。