2017-03-13 420 views
0

我已經嘗試了幾種方法在我的.htaccess文件中添加兩條規則,但我無法得到它的工作。刪除目錄名稱和php文件擴展名

我想刪除.php文件擴展名,但我也想刪除目錄/頁面出現在URL中。

我的目錄結構是這樣的:

/ 
-/errors/ 
--/401.php 

-/pages/ 
--/home.php 
--/about.php 
--/contact.php 

-/includes/ 
--/header.php 
--/footer.php 

我的.htaccess文件是這樣的:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 
ErrorDocument 404 /errors/404.php 

我應該寫在我的.htaccess文件,使工作?

我曾嘗試以下,但它似乎並沒有工作:

RewriteRule ^pages(/.*|)$ $1 [L,NC] 

回答

0

在站點根目錄的.htaccess您可以使用此規則:

RewriteEngine On 

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

不,它沒有! :(我得到一個404,如果我嘗試domain.com/contact例如:( –

+0

我設法做到這一點:'RewriteRule^about.php $ /pages/about.php RewriteRule^contact.php $/pages/contact.php',但我無法找到如何做到這一點所有的PHP文件/頁面 –

+0

現在嘗試我的更新規則從網站根.htaccess – anubhava