2014-01-23 57 views
1

我重寫我的網站的網址與的.htaccess,但面臨的問題,我不知道重寫URL,我只是複製和粘貼的互聯網代碼,在.htaccess重寫URL面臨的問題

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/\.]+)/?$ page.php? [L,QSA] 

這適用於我和重定向,www.domain.com/page.php?id=1www.domain.com/page?id=1

但是當我打開www.domain.com/someotherpage.php然後重定向我page.php文件問題arised。

而且還什麼都在我寫URL隨機其開放www.domain.com/page例如

domain.com/any 
domain.com/thing 
domain.com/written 

我做了一些研究,對於這個問題,但coudn't找到任何解決方案,那麼我在這裏問我的問題。

回答

0

試試這個代碼添加.php擴展:

RewriteEngine On 

# show 404 for .php requests 
RewriteCond %{THE_REQUEST} \.php[?\s/] [NC] 
RewriteRule^- [R=404,L] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{DOCUMENT_ROOT}/$1.php -f 
RewriteRule ^(.+?)/?$ /$1.php [L] 
+1

現在感謝它的正常工作。 – Syed

+0

有可能當任何人嘗試domain.com/page.php時,它會顯示錯誤404,所以沒有人可以看到我的網站是由哪個平臺構建的。 – Syed

+0

雅確信它可以完成,讓我編輯。 – anubhava

0

你應該只使用mod_negotiation模塊並打開在Multiviews:

Options Multiviews 
0

我建議把可從根訪問允許的文件

RewriteRule !\.(js|ico|txt|gif|jpg|png|css|swf|JPG|jpeg|html|woff|ttf|svg|htm|cur|PNG|JPEG|GIF|php|whatever_file_type)$ index.php 

嘗試它在zend框架中的獨奏如果你想在public /目錄下訪問index.php以外的php腳本。