目前我的根Web目錄具有重定向到我的應用程序文件夾像這樣的.htaccess:URL重寫只有目錄
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/ [L]
RewriteRule (.*) app/$1 [L]
</IfModule>
而且/ app目錄裏面我有一個具有以下另一個的.htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [PT,L]
</IfModule>
此時,回到我的PHP中,我可以使用$ _GET ['url']來獲取請求的URL。這很好,很好。但是,我期望做的只是重寫,如果請求的url是一個目錄,並且如果請求的url是一個文件,它將實際重定向到該文件以供查看。我不確定這是否可以純粹通過.htaccess完成,或者如果在php中執行is_file
檢查,然後將頭部重定向到文件?
is_file
檢查,並做了頭重定向,我得到安置在一個循環中,因爲在根目錄htaccess的顯然想重定向到/ app目錄
什麼是最好的該怎麼辦?
1)什麼URL會給你帶來麻煩? 2)那個文件夾**物理位置**(位於'app'文件夾內或外部 - 例如內部網站根目錄)? – LazyOne
如果我嘗試去testdomain.com/test.php,它只會將我重定向到應用程序文件夾內部,到那裏的索引處。 – grep
對不起 - 但我不明白你在這裏有什麼問題。您的標題顯示「Url只重寫目錄」..但是您提供的是一個PHP文件的URL ...您能否更清楚地闡述您的問題 - 1)一般需要做什麼,2)它的工作原理是否正確現在(根據我的理解,顯然是錯的)和3)它應該如何工作。 – LazyOne