Caddyでバーチャルホストを構築する

caddyでバーチャルホストを構築する手順です。作業はすぐに終わります。
環境
- OS CentOS Linux release 7.8.2003
- サーバー さくらのクラウド
- Caddy 1.0.4
Caddyfile編集
caddyfileにドメインを追加するだけで、バーチャルホストを構築することができます。
以下は「hoge.com」で動いてるサーバーに「foo.com」と「www.foo.com」を追加した例となります。
※「cp」はバックアップをとっているだけです。
$ sudo cp /etc/caddy/Caddyfile /etc/caddy/Caddyfile.`date +%y%m%d`
$ sudo vi /etc/caddy/Caddyfile
hoge.com {
root /var/www
gzip
tls hoge@hoge.com
fastcgi / 127.0.0.1:9000 php
log /var/log/caddy/cady-accesslog {
rotate_size 50
rotate_age 5
rotate_keep 4
rotate_compress
}
errors /var/log/caddy/caddy-errors {
rotate_size 50
rotate_age 5
rotate_keep 4
rotate_compress
}
redir {
if {scheme} is http
/ https://{host}{uri}
}
header / {
Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
X-Xss-Protection "1; mode=block"
X-Content-Type-Options "nosniff"
X-Frame-Options "DENY"
Content-Security-Policy "upgrade-insecure-requests"
Referrer-Policy "strict-origin-when-cross-origin"
Cache-Control "public, max-age=15, must-revalidate"
Feature-Policy "accelerometer 'none'; ambient-light-sensor 'none'; autoplay 'self'; camera 'none'; encrypted-media 'none'; fullscreen 'self'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; midi 'none'; payment 'none'; picture-in-picture *; speaker 'none'; sync-xhr 'none'; usb 'none'; vr 'none'"
}
}
www.foo.com, foo.com {
root /var/www/foo
gzip
tls foo@foo.com
fastcgi / 127.0.0.1:9000 php
log /var/log/caddy/cady-accesslog {
rotate_size 50
rotate_age 5
rotate_keep 4
rotate_compress
}
errors /var/log/caddy/caddy-errors {
rotate_size 50
rotate_age 5
rotate_keep 4
rotate_compress
}
redir {
if {scheme} is http
/ https://{host}{uri}
}
header / {
Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
X-Xss-Protection "1; mode=block"
X-Content-Type-Options "nosniff"
X-Frame-Options "DENY"
Content-Security-Policy "upgrade-insecure-requests"
Referrer-Policy "strict-origin-when-cross-origin"
Cache-Control "public, max-age=15, must-revalidate"
Feature-Policy "accelerometer 'none'; ambient-light-sensor 'none'; autoplay 'self'; camera 'none'; encrypted-media 'none'; fullscreen 'self'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; midi 'none'; payment 'none'; picture-in-picture *; speaker 'none'; sync-xhr 'none'; usb 'none'; vr 'none'"
}
}
再起動すれば「foo.com」が追加されます。あとは「/var/www/foo」にファイルを置けば完了です。
sudo systemctl restart caddy
-
前の記事
Termius 鍵認証を使用してsshでサーバーに接続する 2022.01.21
-
次の記事
MySQL 両端から指定した文字列を削除する 2022.01.22
コメントを書く