NGinx +プライベートS 3
S 3にストアするイメージがあります.それで、静的なウェブを所有したいので、そのイメージを見てください.
今、私は特定のセクションの設定に入ります.
(1)最初に、VPCエンドポイントから画像を見ることができるように、S 3のバケットポリシーを更新する必要があります.
{
"Version": "2008-10-17",
"Id": "PolicyForCloudFrontPrivateContent",
"Statement": [
{
"Sid": "Access-to-specific-VPCE-only",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::demo-static-s3/*",
"Condition": {
"StringEquals": {
"aws:sourceVpce": "vpce-0d92e50f230bc8070"
}
}
}
]
}
次に、nginxを以下のようにS 3から画像を表示できるように設定します.location ~^/image/(.+)$ {
resolver 10.0.0.2;
proxy_pass http://s3-ap-southeast-1.amazonaws.com/demo-static-s3/image/$1;
}
リゾルバ:あなたのAWS VPCのDNSサーバのIPアドレス
10.0.0.0: Network address.
10.0.0.1: Reserved by AWS for the VPC router.
10.0.0.2: Reserved by AWS. The IP address of the DNS server is the base of the VPC network range plus two. For VPCs with multiple CIDR blocks, the IP address of the DNS server is located in the primary CIDR. We also reserve the base of each subnet range plus two for all CIDR blocks in the VPC. For more information, see Amazon DNS server.
10.0.0.3: Reserved by AWS for future use.
10.0.0.255: Network broadcast address. We do not support broadcast in a VPC, therefore we reserve this address.
参照https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html
プロキシノーパス
次に、オンライン画像の代わりに、S 3から画像を読み込むためにHTMLを変更します.
<div class="container">
<h1>Hey there</h1>
<img src="https://cleandevs.com/image/668c1d479e27bb8750823655c83a6c9bd90263f9_hq.jpg"/>
</div>
( 4 )最後に、ECS Fargateに配備します.次のようになります.これは、ソリューションを解決することができますS 3からCloudfrontを使用せずに画像を表示します.
Reference
この問題について(NGinx +プライベートS 3), 我々は、より多くの情報をここで見つけました https://dev.to/khanhcd92/nginx-private-s3-515hテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol