0

我们对托管在我们服务器上的所有网站都使用 zend 框架,而我在这里面临的情况是,我看不到任何摆脱它的方法以及使其工作的方法。

我的服务器使用 CentOS + php 5.3 + WHM/cPanel。

其中一个网站必须有一个受密码保护的文件夹: http://website.com/files/protected_files

但正如你们所知,Zend 的 .htaccess 当前所在的位置/home/website/public_html并不能/home/website/public_html/files/protected_files/.htaccess正常工作。

如果我禁用 Zend 的.htaccessURL 提示输入密码,当我键入时我可以看到我的文件,但是当我启用 Zend 时,.htaccess它会将该 URL 视为一个真实的 URL,并会抛出一个找不到页面的错误。

这是我的 Zend 的 .htaccess:

Rewriteengine on 
RewriteRule !\.(js|txt|ico|gif|GIF|jpg|JPG|png|PNG|css|swf|pdf|xml|XML|eot|svg|ttf|woff)$ index.php 

这是位于 protected_files 中的 .htaccess

AuthType Basic 
AuthName "protected" 
AuthUserFile "/home/website/.htpasswds/public_html/files/protected_files/passwd" 
require valid-user 

我在这里想念什么。为什么它不起作用?

我确实尝试过启用Allowoverride AuthConfig//但所有这些都不起作用AllowOverride noneAllowOverride all我还尝试将.htaccesprotected_files 中的 s 内容放入其中,httpd.conf但没有用。

我对服务器具有 root 访问权限,所以任何提示都会有所帮助!

4

1 回答 1

0

请参阅 ZF2 的骨架应用程序.htaccess

https://github.com/zendframework/ZendSkeletonApplication/blob/master/public/.htaccess

index.php从这个配置中可以看出,如果文件不存在,它只会重写请求。这与您配置的当前规则形成对比,如果它没有您指定的扩展之一,则重写任何内容。

于 2013-11-05T20:48:14.377 回答