2014-02-13 143 views
0

我是新來的.htaccess文件,我一直在試圖隱藏從URL擴展.PHP和公用文件夾如何隱藏擴展名和包含的文件夾.htaccess的

換句話說,我要這樣:

site.com/public/index.php 

看起來像這樣:

site.com/index 

我能單獨做兩件事情,但我不能在同一時間讓他們...

謝謝!

+1

請提供信息你如何設法分開完成這些事情,並且我們可能會建議如何合併它們。 – icabod

+0

RewruteRule(。*)/?的index.php?URL = $ 1然後,您將收到$ _SERVER ['QUERY_STRING']中的查詢字符串,並處理'index'以處理它。去嘗試一下。將這個應用到.htaccess之後,回顯$ _SERVER ['QUERY_STRING']。可能性是你的探索。 –

回答

0

你將需要2條規則。

首先,當您收到site.com/public/index.php的請求,你必須告訴客戶通過執行此發送另一個請求site.com/index

RewriteRule ^site\.com/public/index\.php/?$ site.com/index [R=301,L]

的R = 301國旗說,你正在發送HTTP 301'永久移動'標題。當客戶收到這個時,他們會發送一個新的請求,但是對於site.com/index

接下來,你需要一個規則來處理請求site.com/index這樣的:

RewriteRule ^site\.com/index$ index.php [L]

所以你得到的.htaccess文件應該是這個樣子:

RewriteEngine On 

RewriteRule ^site\.com/public/index\.php/?$ site.com/index [R=301,L] 
RewriteRule ^site\.com/index$ index.php [L] 
相關問題