我遇到了一个小问题(因为该网站的优先级不高)但仍然非常有趣。
我有一个 apache 根域,其中其他网站位于“/var/www/”
我将 foo.example.com 转发到“/var/www/foo-example”(wordpress 网站)
这里的问题是,当您访问 foo.example.com 时,系统会提示您输入凭据。如果您点击取消,系统会显示拒绝访问页面。
但是当您转到服务器的直接 IP(这会为您提供默认索引页)并在提示输入凭据时点击取消时,它只会继续为您提供登录屏幕,并且在按几次取消后,它会提供(可能缓存的)页面的裸 html 部分。
我该如何防止这种情况发生?
也许这是一个错误...
即使我转到 ip/foo-example 时阻止访问根目录,它仍然会这样做。
并且我想保留 www 目录内的所有目录或至少保留同一个目录。
谢谢
附言:
这是我的配置:
<VirtualHost *:80>
DocumentRoot /var/www/wp-xxxxxxx/
ServerName beta.xxxxxxxxx.nl
<Directory "/var/www/wp-xxxxxxxxx/">
Options +Indexes
AuthName "xxxxxxxx Beta Site"
AuthType Basic
require valid-user
Satisfy all
AuthBasicProvider file
AuthUserFile /var/www/wp-xxxxxxx/.htxxxxxxxxx
order deny,allow
allow from all
</Directory>
ServerAdmin [email protected]
ServerAlias beta.xxxxxxx.nl
</VirtualHost>
答案1
您是否在使用 mod_cache?当 mod_cache 提供内容时,它不检查访问控制。不确定为什么这会影响 IP 地址但不会影响主机名,但您至少可以尝试禁用它以查看是否能解决问题。