我有兩個目錄我的應用程序目錄下URL通過entry.php改寫
my_app:
.htaccess
lib:
entry.php
web:
css:
css_file1
css_file2
js:
js_file1
js_file2
我的網址會是這樣http://example.com/my_app/my_path
根據目錄程序my_app,有兩個目錄網絡和lib。
如果my_path的可以映射到網絡目錄下的任何文件,使用它。例如,http://example.com/my_app/css/css_file1應映射到my_app/web/css/css_file1。
否則其重定向到LIB/entry.php/my_path的使得所述my_path的可以通過$ _SERVER訪問[ 'PATH_INFO']重定向應該是內部的。用戶不應該看到重定向。
我想在.htaccess中寫配置來完成它。 我寫了下面給出的代碼。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule (.*) ../web/$1
RewriteCond web/%{REQUEST_FILENAME} !-f
RewriteCond web/%{REQUEST_FILENAME} !-d
RewriteRule (.*) lib/entry.php/$1
</IfModule>
但是我得到了403錯誤。
你是什麼DOCUMENT_ROOT? – anubhava
DOCUMENT_ROOT是/ var/www。但my_app位於/ var/www/my_app。 –
添加一個重寫規則,將每個頁面匹配(如果文件不存在)重寫爲一個URL參數。因此,在root htaccess中,將/ my_app/foo/bar重寫爲/?q = my_app/foo/bar。現在在根目錄的索引文件中執行正確的調用。 –