Apache Auth Digest域和Rails分布式资产主机

时间:2009-01-08 17:26:46

标签: ruby-on-rails apache authentication assets

我有一台服务器,我正在设置,我遇到了一个我无法解决的Apache配置问题。

我有Apache 2.2和Passenger服务于分布式资产托管的Rails应用程序。这是Rails的功能,可让您从assets0.example.com,assets1,assets2等提供静态资产。

该网站需要密码才能发布。我使用Apache的mod_auth_digest在网站上设置了HTTP身份验证。在我的配置中,我试图使用AuthDigestDomain指令来允许访问每个资产URL。问题是,它似乎没有起作用。当我加载页面时,我得到了密码的初始提示,但是当它第一次从其中一个资产URL加载资产时,我会得到第二次,第三次或第四次的提示。在某些浏览器中,系统会提示我显示页面上的每个资源。

我希望这只是我如何指定我的指令而不是Apache本身的授权限制的问题。请参阅下面编辑的身份验证部分:

<Location />
  AuthType Digest
  AuthName "Restricted Site"
  AuthUserFile /etc/httpd/passwd/passwords
  AuthGroupFile /dev/null
  AuthDigestDomain / http://assets0.example.com/ http://assets1.example.com/ http://assets2.example.com/ http://assets3.example.com/
  require valid-user
  order deny,allow
  allow from all
</Location>

1 个答案:

答案 0 :(得分:0)

我之前从未使用过apache的跨域身份验证。但是:

  1. Apache documentation使用与您不同的语法:

    AuthDigestDomain / assets0.example.com/ assets1.example.com/ assets2.example.com/ assets3.example.com/
    AuthDigestDomain /private/ http://mirror.my.dom/private2/
    

    请注意'http://'?

  2. 该文档还包含有关浏览器支持的一些注意事项。您确定您的浏览器可以处理此问题吗?