CloudFront の設定 (php ファイル対応編)

AWS CloudFront の Behavior の設定。サイトに php ファイルがある場合。

Path PatternDefault (*)*.php
Viewer Protocol PolicyRedirect HTTP to HTTPSRedirect HTTP to HTTPS
Allowed HTTP MethodsGET, HEADGET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
Cached HTTP MethodsGET, HEADGET, HEAD
Cache Based on
Selected
Request Headers
None (Imrpoves Caching)None (Improves Caching)
Object CachingUse Origin Cache HeadersUse Origin Cache Headers
Minimum TTL00
Maximum TTL3153600031536000
Default TTL8640086400
Forward CookiesNone (Improves Caching)All
Query String
Forwarding
and Caching
None (Improves CachingForward all, cache based on all

Amazon Web Service を無料枠で使う際の雑記

  • EC2 インスタンス作成時、ストレージのボリュームを、EBS 無料枠の 30GB まで増やす。
  • Amazon Linux 2 ではスワップファイルを初期状態では持っていないので、スワップファイルを作成する。
  • amazon-linux-extras で lamp-mariadb10.2-php7.2=latest をインストールする。
  • yum install httpd する。
  • yum install mod_ssl する。
  • VirtualHost で /home/hoge/www を指定した場合、エラーログに「Permission denied」が出る場合、多くの原因は、/home/hoge ディレクトリのパーミッションが 775 になっていない。
  • Amazon SES を使う場合、まずは Postfix でメールをローカル配送できるようにする。
    そして、SES から認証メールが着たら Maildir/new のファイルを cat して、認証 URL をブラウザにコピペする。
    認証が終わったら、Postfix の設定を SES に転送するように変更する。
  • CloudFront でディストリビューションする場合、オリジンは http でも https でも見られるようにする。
    Redirect https かけると、後でブラウザから「TOO MUCH REDIRECT」と怒られることがある。
  • RDS で作るユーザは、@以降のアドレスに EC2 のプライベートアドレスを付ける。
  • メモリは使用率 92% ぐらいからスワップファイル使い出すから、CloudWatch Agent 入れて 90% で再起動だと WordPress とかの大物が一時的に大きなメモリサイズ使ってそこで再起動かかっちゃうし、95% だとそもそもその値にならない。
    スワップファイルの空き容量までわかる方法ないかなー。
  • WordPress でユーザ権限を与えるのは wp.* にだ。wpl.localhost ではない。
  • AWS for WordPress の CloudFront 機能は、特にマルチサイトだと使い物にならない。