有许多类似的问题,但没有一个有用。 我的.htaccess
中有以下规则RewriteRule ^images/.*$ - [F]
所以对于像/ images / goods /或/images/nonexistentfile.jpg这样的文件夹我得到'禁止'这就是我想要的。问题是如果请求存在的文件,我的规则将被忽略并提供文件。事实上,如果我在.htaccess中犯了一个故意的错误,我就不会像申请文件夹或不存在的文件时那样得到内部服务器错误。我应该寻找什么?
apache2.conf
<VirtualHost 1.2.3.4:8080>
ServerName domain.com
DocumentRoot /var/www/s3/data/www/domain.com
SuexecUserGroup s3 s3
CustomLog /var/www/httpd-logs/domain.com.access.log combin$
ErrorLog /var/www/httpd-logs/domain.com.error.log
ServerAlias www.domain.com
ServerAdmin example@domain.com
AddDefaultCharset utf-8
php_admin_value open_basedir "/var/www/s3/data:.:/tmp"
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f example@domain.com
php_admin_value upload_tmp_dir "/var/www/s3/data/mod-tmp"
php_admin_value session.save_path "/var/www/s3/data/mod-tmp"
AddType application/x-httpd-php .php .php3 .php4 .php5 .phtml
AddType application/x-httpd-php-source .phps
</VirtualHost>
我应该在这里发布什么?
答案 0 :(得分:0)
我有类似的问题。 我将以下.htaccess放入images文件夹中以禁止访问jpg文件(在我的情况下)
IndexIgnore */*
<Files ~ ".*\.jpg$">
Order deny,allow
Deny from all
</Files>
答案 1 :(得分:0)
看起来你的htaccess文件没有被应用。尝试在vhost配置中添加AllowOverride directive:
<Directory "/var/www/s3/data/www/domain.com/">
AllowOverride All
</Directory>
默认情况下,AllowOverride应设置为All
,但您的主机可能会将其设置为服务器配置级别的其他内容。
答案 2 :(得分:0)
万一有人有同样的问题,这是非常微不足道的。默认的ISPManager安装将nginx放在Apache前面以获取静态文件...