目前我们在 s3 bucket 中设置了一个站点。此站点使用 web.config 文件。
但是我们可以通过 url 导航到该文件:例如,www.mysite.com/web.config
将提供该文件。
有没有简单的方法可以避免通过这种方法提供 web.config?在 IIS 上,这在 apache 中也是自动安全的(对于 .htaccess 文件)
答案1
如果您的网站确实需要web.config
文件,那么您的网站就不适合托管在 S3 上。
您可以在 Amazon Simple Storage Service (Amazon S3) 上托管静态网站。在静态网站上,各个网页包含静态内容。它们还可能包含客户端脚本。相比之下,动态网站依赖于服务器端处理,包括 PHP、JSP 或 ASP.NET 等服务器端脚本。Amazon S3 不支持服务器端脚本。
https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html
另一方面,如果您的网站实际上不需要 web.config 文件,则不应将该文件上传到公共 S3 存储桶。
可以使用存储桶策略通过名称模式拒绝对文件的访问,或者不public-read
为对象本身进行设置(假设存储桶策略不会使此设置变得多余)......但这解决了错误的问题。
答案2
@Malky.Kid,您能否分享一下您删除文件的方法以及您从哪里配置该文件中的变量。我也遇到了类似的情况。