2011-12-19 76 views
0

在根目錄下有引導,關於它的土地,以轉到一個diff域一切的htaccess文件htaccess的在子文件夾不能重寫文件

RewriteEngine on 
RewriteRule (.*) http://www.domain.com/ 

http://www.domain.com/123 = http://www.domain.com/

我有一個名爲「文件夾管理員「內的另一個htaccess文件,我希望該htaccess文件指向自己的根目錄'admin.php'

RewriteEngine on 
RewriteRule ^$ /admin.php 

http://www.domain.com/admin/ = http://www.domain.com/admin/admin.php

但是不管我怎麼做,我要麼得到500錯誤,要麼來自主根文檔的重寫規則覆蓋它。

希望有道理,謝謝。

回答

0

解決最簡單的方法這一點(有幾個)可能是排除在根部的重寫規則使用條件這樣admin目錄:

RewriteEngine on 
RewriteCond $1 !^admin/.* 
RewriteCond $1 !^admin\.php 
RewriteRule (.*) http://www.domain.com/ 
+0

嗯,有一半的工作。 admin目錄現在加載。但是我在dir'Options index禁止的目錄索引'中得到了403錯誤:'並且如果在/ admin/dir的htaccess文檔中設置了任何重寫規則,那麼它只是重定向到domian.com – Nicekiwi 2011-12-19 15:15:39

+0

我的不好,RewriteCond應該排除管理員以下的任我相應地更新了答案(沒有測試它,但它應該可以工作)。 – AVee 2011-12-19 15:23:12

+0

是的,它仍然工作,但只有一半。我在裏面htaccess的/管理這些寫規則/: '的DirectoryIndex admin.php的 RewriteEngine敘述在 重寫規則^ $喵/admin.php?action=meow' 如果我轉到/管理/喵/重定向到domain.com。 – Nicekiwi 2011-12-19 23:26:36