カスタムドメイン | オリジンドメイン | ビヘイビア(パスパターン) |
---|---|---|
example.com | origin.example.com | /foo/* -> origin.example.com |
クライアント[^viewer]から https://example.com/foo/ をリクエストした際のフローはオリジンリクエストポリシーによって異なる。
以下は例としてオリジンリクエストポリシーに AllViewerExceptHostHeader を指定した場合を記載する。
詳細はCloudFront Hostヘッダーを参照。
2.
で取得したレスポンスをクライアントに返す[^viewer]:CloudFront はクライアントをビューワーと呼ぶ。
カスタムドメイン | オリジン1 | オリジン2 |
---|---|---|
example.com | origin1.example.com | origin2.example.com |
パス | オリジン |
---|---|
https://example.com | origin1.example.com |
https://example.com/blog | origin2.example.com |
/var/www/html/example.com
# wp-config.php
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );
certbot を使用して origin1.example.com の SSL を取得する。
<Directory "/var/www/html/example">
AllowOverride All
Options -Indexes +FollowSymLinks
Order allow,deny
Allow from all
Require all granted
</Directory>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/example.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ServerName origin1.example.com
SSLCertificateFile /etc/letsencrypt/live/origin1.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/origin1.example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
/var/www/html/example.com/blog
# wp-config.php
define( 'WP_HOME', 'https://example.com/blog' );
define( 'WP_SITEURL', 'https://example.com/blog' );
certbot を使用して origin2.example.com の SSL を取得する。
<Directory "/var/www/html/example/dx">
AllowOverride All
Options -Indexes +FollowSymLinks
Order allow,deny
Allow from all
Require all granted
</Directory>
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/example.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# 以下 sudo certbot --apache で自動追記
ServerName origin2.example.com
SSLCertificateFile /etc/letsencrypt/live/origin2.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/origin2.example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>