我正在使用kohana 3进行项目,并且有一个带有各种动作的控制器/ foo(/ foo / about,/ foo / features等等)。但是,我最近刚给了一个带有相当大的html网站的文件夹,放在这个目录中,包括html / txt / picture文件。我现在有一个看起来像这样的结构
依旧......
我的应用程序完美地提供这些文件,但是,当我去/ foo控制器时 - 它不再有效。我可以通过编辑我的htaccess文件来解决这个问题:
RewriteRule ^(?:application|modules|system|foo)\b.* index.php/$0 [L]
然而,我的静态文件无法提供服务。我可以做什么来提供静态文件(如果它们存在但是默认回到我的控制器/动作,当它们不存在时?
我一直在尝试编辑htaccess只提供文件夹列表中的文件,但无法找到正确的方法来执行此操作。
如果我必须更具描述性,请告诉我。
谢谢 -
编辑(完整.htaccess):
RewriteEngine On
RewriteBase /
<Files .*>
Order Deny,Allow
Deny From All
</Files>
RewriteRule ^(?:application|modules|system)\b.* index.php/$0 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT]
答案 0 :(得分:0)
我不知道kohana,但我想如果你在“RewriteEngine on”2行后添加你的.htacess就可以了:
上的RewriteEngine
RewriteCond%{REQUEST_FILENAME}!-f #Exlude files RewriteCond%{REQUEST_FILENAME}!-d #Exlude目录
这将从beign处理中排除文件和目录。
答案 1 :(得分:0)
此行正在破坏/foo
链接:
RewriteCond %{REQUEST_FILENAME} !-d
因为/foo
被视为目录。您可以删除该行,只要您不担心丢失目录索引。