您好我有以下文件结构:
/public_html(docroot)
- /public
/css
/js
index.php
- /application
- /library
注意:我无法更改此结构。我想要的是:对文件的所有请求都应该从公共文件夹打开文件,所有其他请求应该转到index.php。目前我在public_html中有下一个.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
但它适用于http://hostname/public
。没有public
它怎么办?感谢。
答案 0 :(得分:1)
我找到了答案:
RewriteEngine On
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) /public/$1 [L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]