我在我的.htaccess下面的代碼:的.htaccess mod_rewrite的鏈接到錯誤的頁面
RewriteEngine On
RewriteRule ^/?([^/\.]+)/?$ $1.php [L]
RewriteRule ^/?([^/\.]+).php$ $1/ [R,L]
RewriteRule ^/?([^/\.]+)/?$ $1.php [L]
工作正常。這是做什麼是採取像http://www.example.com/whatever
的網址,並使其閱讀http://www.example.com/whatever.php
頁面。
但是,我希望能夠做的是帶上像http://www.example.com/whatever.php
這樣的網址並自動發送到http://www.example.com/whatever
,因此是代碼的第二行。但是,這不起作用。現在做什麼,只要遇到以.php
結尾的鏈接,網址就會變成http://localhost/C:/Sites/page/whatever/
,並拉動403: Forbidden
頁面。
所有我想知道什麼是我可以讓http://www.example.com/whatever.php
將被解讀爲http://www.example.com/whatever
,而且如果http://www.example.com/whatever.php
輸入到地址欄,它會自動重定向到http://www.example.com/whatever
。
這是否有意義?
編輯
好了,看來我是不是太清楚..基本上,我想/whatever/
改爲whatever.php
而網址仍然停留作爲/whatever/
,對不對?但是,如果URL爲/whatever.php
,我希望它實際上將用戶的URL重定向到/whatever/
,然後再次將其讀取爲whatever.php
。這可能嗎?
喬恩謝謝!我早些時候嘗試了這個代碼,但它似乎沒有工作,但今天早上我又試了一次,你知道什麼,它的工作原理!看起來我的'.htaccess'只是有一瞬間..仍然,非常感謝你! – 2012-03-11 22:10:32