mod重写为具有2个公用文件夹的zend框架

时间:2012-03-21 09:38:24

标签: php apache zend-framework mod-rewrite

您好我有以下文件结构:

/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它怎么办?感谢。

1 个答案:

答案 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]