Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Drupal7×Cloudfront×SSL

 Drupal7×Cloudfront×SSL

29c60cc9d6ccf002660af74d52800435?s=128

kazukomurata

May 30, 2017
Tweet

Transcript

  1. Drupal7×CloudFront×SSL 村⽥ 和⼦ (@kazuno_ko85)

  2. ⾃⼰紹介 ´ 村⽥ 和⼦ (@kazuno_ko85) ´ デジタルサーカス株式会社 所属 ´ Drupal

    は、2015年1⽉〜 ´ 最近はずっとD7対応しています。 ´ Drupal meetup Tokyo にもいます。
  3. 概要 ´ AWS EC2×Drupal7で運⽤していたサイトにCloudFront + AWS Certificate Manager を組み合わせて、CDN +

    常時SSL化を対応したときのメモです。 ´ Drupalを中⼼にはまったこと、実際設定したことを中⼼にお話しします。
  4. 概要 -サーバ構成- Cloudfront EC2 port: 433 port: 80 IP制限あり http://admin.XXXX.co.jpでアクセス

    http://www.XXXX.co.jpでアクセス http://www-org.XXXX.com port: 80 SSL AWS Certificate Manager
  5. 概要 -作業リスト- ´ Drupal ´ URL書換 ´ キャッシュ 無効化 ´

    Cloudfront ´ Behaviorsの設定 ´ AWS Certificate Manager ´ 証明書発⾏ & Cloudfrontに設定
  6. Drupal -URL書換- ´ アクセスされた経路によって、settings.phpにてbase_rootとbase_urlを上書き ´ 実際設定した内容(抜粋) ´ https://gist.github.com/kazukomurata/9f0de6734fcf892c374fbae0d9b7f663

  7. Drupal -キャッシュ 無効化- ´ URL⽂字列をキャッシュする機能は無効化 ´ Metatag ´ 匿名ユーザー向けページのキャッシュ ´

    ブロック キャッシュ ´ CSSファイル圧縮 ´ モジュールが独⾃にCSSを定義しているときに要注意
  8. Cloudfront -Behaviorsの設定1- ´ キャッシュの定義はURLパスベース ´ 参考にしまくったサイト「DrupalをCDNで爆速にする⽅法」 ´ http://blog.redbox.ne.jp/drupal-advent-calendar2016-cdn.html

  9. Cloudfront -Behaviorsの設定2- ´ Headerに「CloudFront-Forwarded-Proto」を追加 ´ ユーザが実際アクセスしているURLをDrupalが知るため

  10. Cloudfront -Behaviorsの設定3- ´ 画像URLに「itok」のパラメタを許可 ´ DrupalのImage Styleの仕様 ´ 例 /sites/default/files/styles/from_our_blog/public/images.jpg?itok=bTXGvg6Mで

    アクセスされた場合、対象画像がない場合はDrupalが⽣成した上で画像をレスポンスす る。
  11. Cloudfront -Behaviorsの設定4- ´ 多⾔語化の場合、URLに⾔語を表す⽂字が⼊ることが多い。 ´ キャッシュ対象外を設定するときに要注意 ´ 例 : 「/contact」から始まるURLでフォームの場合、英語ページが

    「/en/contact」で存在するため、以下のようなパス設定でしのいだ。
  12. AWS Certificate Manager -証明書発⾏ & Cloudfrontに設定 ´ AWS Certificate Manager

    ´ Cloudfront かELBにセットする分には無料 ´ 申し込むとサイト管理者向けにメールが届いて、URLにアクセスすれば完了。
  13. ありがとうございました ´ 次回もなにか発表します。 ´ 枠があれば! ´ そろそろDrupal8がやりたい!