NGINXサイトをCaddyに移行する方法
ServBayはCaddy、NGINX、ApacheをWebサーバーとして提供し、CaddyとNGINXのデフォルト設定にはURL Rewriteルールがあらかじめ設定されています。ユーザーは通常、追加のRewriteルールを設定する必要がありません。本記事では、NGINXサイトをServBayに付属するCaddyサーバーに移行する方法を詳しく説明し、LaravelとWordPressを例に挙げて説明します。
NGINXとApacheのサポート
ServBayはすでにNGINXをサポートしています。詳細はNGINXをデフォルトのWebサーバーに切り替える方法を参照してください。
概要
サイトの移行は、既存の設定とファイルを新しいサーバー環境に移動することを含みます。ServBayはユーザーにWebサーバーとしてCaddyを使用することをサポートしており、ほとんどのPHPフレームワークやCMSシステムについて、ServBayはすぐに使用可能な状態です。追加のRewriteルールの設定は不要です。
移行前の準備
移行を始める前に、すべてのサイトファイルとデータベースのバックアップを取っておくことを確認してください。移行中にはさまざまな問題が発生する可能性があるため、バックアップは非常に重要です。
Laravelサイトの移行
NGINX設定
以下は、Laravelサイト用の典型的なNGINX設定ファイルです:
server {
listen 80;
server_name laravel.demo;
root /Applications/ServBay/www/laravel/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/Applications/ServBay/tmp/php-cgi.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Caddy設定
重要な注意
ServBayでは、すでにRewriteルールとPHP処理ルールがデフォルトで設定されているため、ユーザーが手動で設定ファイルを作成する必要はありません。
以下は理論上のCaddy設定例で、対比と理解のためのものです:
laravel.demo {
root * /Applications/ServBay/www/laravel/public
php_fastcgi unix//Applications/ServBay/tmp/php-cgi.sock
file_server
@notStatic {
not {
file {
try_files {path} {path}/ /index.php?{query}
}
}
}
rewrite @notStatic /index.php
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
WordPressサイトの移行
NGINX設定
以下は、WordPressサイト用の典型的なNGINX設定ファイルです:
server {
listen 80;
server_name wordpress.demo;
root /Applications/ServBay/www/wordpress;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/Applications/ServBay/tmp/php-cgi.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Caddy設定
重要な注意
ServBayでは、すでにRewriteルールとPHP処理ルールがデフォルトで設定されているため、ユーザーが手動で設定ファイルを作成する必要はありません。
以下は理論上のCaddy設定例で、対比と理解のためのものです:
wordpress.demo {
root * /Applications/ServBay/www/wordpress
php_fastcgi unix//Applications/ServBay/tmp/php-cgi.sock
file_server
@notStatic {
not {
file {
try_files {path} {path}/ /index.php?{query}
}
}
}
rewrite @notStatic /index.php
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
まとめ
NGINXサイトをServBayのCaddyサーバーに移行することは非常に簡単で、構成変更を行う必要はなく、ユーザーはServBayにサイトを追加するだけで済みます。Caddyの設定ファイルの構文はシンプルで読みやすく、ServBayはすでにRewriteルールとPHP処理をデフォルトで設定しているため、ユーザーは追加で構成を行う必要がありません。本記事を通じて、LaravelとWordPressサイトをCaddyに移行する方法を理解できるでしょう。