2014-03-24 37 views
1

我想我所有的PHP文件擴展名重寫/的.htaccess改寫和刪除.PHP上只有少數文件

而且我得到了它的工作機智這段代碼:

RewriteEngine敘述在

# hide .php extension snippet 
# To externally redirect /dir/foo.php to /dir/foo 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
RewriteRule^%1/ [R,L] 

# To internally forward /dir/foo to /dir/foo.php 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.+?)/?$ $1.php [L] 

然而,它打破了交談的數據庫中有代碼,並使用URL休息示例頁面我的管理頁面:

創建-ticket.php設備= XBOX + 360

我需要留在幾頁的擴展...

有沒有一種方法,我可以使用名爲.php的結束上面的代碼,但只能在特定的文件,而不是每一個文件?

感謝, -O

+0

您可以排除某些文件或文件夾,或使用的查詢參數傳遞頁面,以便它建立了一個模式看對於。 –

回答

0

你可以排除這樣的:

RewriteEngine On 

# hide .php extension snippet 
# To externally redirect /dir/foo.php to /dir/foo 
RewriteCond %{THE_REQUEST} !/(create-ticket|admin)\.php [NC] 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC] 
RewriteRule^%1/ [R,L] 

# To internally forward /dir/foo to /dir/foo.php 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.+?)/?$ $1.php [L]