繁体   English   中英

S3和具有基本认证的apache mod_proxy

[英]S3 and apache mod_proxy with basic authentication

我想使用apache mod_proxy对我的某些文件(apk文件)进行基本身份验证,以SSL重定向到S3存储桶。 SSL和mod_proxy可以完美地工作,但是基本身份验证被忽略。

<VirtualHost *:443>
        ServerName resources.mydomain.jp

        <FilesMatch "\.apk$">
          Order deny,allow
          SetEnvIf User-Agent ".*Android.*" allow_ag
          Options FollowSymLinks
          Allow from env=allow_ag
          Deny from all
          AuthType Basic
          AuthName "Secret Zone"
          AuthUserFile /etc/httpd/.htpasswd
          Require user xxx_customer
        </FilesMatch>


        SSLEngine on
        SSLProxyEngine on
        SSLProtocol -ALL +SSLv3 +TLSv1
        SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
        SSLCertificateFile conf.d/xxx.cer
        SSLCertificateKeyFile conf.d/xxx.key
        SSLCACertificateFile conf.d/xxx.cer

        ProxyPass / http://resources.mydomain.jp.s3-website-ap-zone-1.amazonaws.com/
        ProxyPassReverse / http://resources.mydomain.jp.s3-website-ap-zone-1.amazonaws.com/

    </VirtualHost>

顺便说一句,相同的“ FileMatch”用于另一个VirtualHost,并且可以正常工作。

apache信息:

$ httpd -v
Server version: Apache/2.4.12 (Amazon)
Server built:   Mar 18 2015 20:24:15

谢谢

<FilesMatch>仅匹配物理文件系统中的文件,而不匹配您可能认为是文件名的URL的最后一个组成部分。 由于您正在代理,因此没有URL映射到文件系统。

尝试<LocationMatch>

需要更多清理:

  • 明确设置“满足任何条件”
  • 将“拒绝订单,允许”更改为“允许订单,拒绝”(这意味着默认情况下拒绝)
  • 删除“拒绝”(不再需要,使用env = ...中的“允许”简化了订购问题)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM