【发布时间】:2011-07-13 03:24:12
【问题描述】:
以下是我的 VHost(稍作修改以隐藏一些 URL):
1 名称VirtualHost 192.168.1.49:80 2 3 4 ServerName 内部名称.local 5 ServerAlias *.internal-name.local external-domain.co.uk *.external-domain.co.uk 6 7 8 允许覆盖所有 9 10 订单拒绝,允许 11 拒绝一切 12 13 AuthName“受限开发服务器” 14 AuthUserFile /var/www/html/.htpasswd 15 AuthType 基本 16 需要有效用户 17 18 允许来自 192.168.1。 19 20 满足任何 21 目录> 22 23 24 订单允许,拒绝 25 允许所有人 26 拒绝从无 27 位置> 28 29 日志级别调试 30 虚拟文档根 /var/www/html/%1/ 31 虚拟主机>一切正常 - 每个子域在 /var/www/html 中都有自己的文件夹。来自 192.168.1.x 的任何请求(通过内部域映射)都可以在没有密码提示的情况下查看该站点。来自外部 IP(通过 external-domain.co.uk)的任何请求都将被提示输入密码。
我遇到的问题是让最后一个“位置”规则起作用。
我不会使用或禁用“/open-path” URL 的密码保护(无论是 .htaccess 还是 vhost 级别)。
实际上 - 此服务器上的每个站点都在运行 Drupal,它使用 .htaccess 中的 URL 重写将所有非文件映射到“?q =”...所以: http://domain/foo/bar 映射到: http://domain/index.php?q=foo/bar
我认为这应该不会影响这个,不是吗?
我指出它的原因是需要打开“/open-path/callback”,第 3 方 API 才能“ping”该站点。我需要在推送上线之前测试此回调是否正常工作,但是我不想让整个网站免受密码保护。
我尝试将 Location 设置为“/index.php?q=open-path”,但也没有成功。
任何建议将不胜感激!
【问题讨论】:
标签: apache .htaccess configuration passwords access-control