恼人的Silex子目录.htaccess问题

时间:2013-10-23 23:22:34

标签: apache mod-rewrite silex

我正在使用Silex开展一些项目,而且我们都无法使.htaccess文件正常工作。当前目录结构为http://localhost/IIV/

Silex中的前端文件位于http://localhost/IIV/web/index.php

这就是我目前的情况:

    Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /IIV/

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule ^ - [L]

RewriteCond %{DOCUMENT_ROOT}/web/$1 -f
RewriteRule ^(.+?)/?$ /web/$1 [L]

RewriteCond %{DOCUMENT_ROOT}/web/$1 !-f
RewriteRule ^(.+?)/?$ /web/index.php [L]
RewriteRule ^(.+?)/?$ /web/index_dev.php [L]

1 个答案:

答案 0 :(得分:5)

你的RewriteBase错了,试试这个:

<IfModule mod_rewrite.c>
    Options -MultiViews
    RewriteEngine On
    RewriteBase /IIV/web/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^ index.php [L]
</IfModule>

另外,请确保Apache配置为将.htaccess规则加载为上面提到的@Maerlyn。