マネージド WordPress ホスティングはサイトごとに課金し、設定を隠してしまいます。自分の VPS なら、サーバー全体、載せられるだけのサイト、そして PHP とキャッシュの完全な制御が手に入ります。定番のスタック(Nginx、PHP-FPM、MariaDB)は Ubuntu 24.04 に 15 分ほどでインストールできます。
始める前に: 専用 IP 付きのプラン(訪問者は 80/443 番に接続します。NAT プランは受信の Web トラフィックを受け付けません)と、サーバーを指す A レコードを持つドメインが必要です。月額 $10 の Micro-IP は、一般的なサイトにとって快適な住まいです。
1. スタックをインストールする
apt update
apt install -y nginx mariadb-server php8.3-fpm php8.3-mysql php8.3-curl \
php8.3-gd php8.3-intl php8.3-mbstring php8.3-xml php8.3-zip
2. データベースを作成する
Ubuntu の MariaDB では、root はローカルソケット経由でパスワードなしにログインできます。
mariadb <<'SQL'
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4;
CREATE USER 'wp'@'localhost' IDENTIFIED BY 'use-a-long-random-password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp'@'localhost';
FLUSH PRIVILEGES;
SQL
3. WordPress をダウンロードする
cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
mv wordpress /var/www/example.com
chown -R www-data:www-data /var/www/example.com
4. Nginx を設定する
cat > /etc/nginx/sites-available/example.com <<'EOF'
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
client_max_body_size 64M;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.(?!well-known) { deny all; }
}
EOF
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
try_files の行が、きれいなパーマリンクを機能させる部分です。WordPress の .htaccess ルールに相当する Nginx の設定です。
PHP のアップロード上限を client_max_body_size に合わせて引き上げます。
sed -i 's/^upload_max_filesize.*/upload_max_filesize = 64M/; s/^post_max_size.*/post_max_size = 64M/' /etc/php/8.3/fpm/php.ini
systemctl restart php8.3-fpm
5. 無料の HTTPS
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
Certbot が Nginx の設定を HTTPS 用に書き換え、自動更新も設定します。
6. ブラウザーで仕上げる
https://example.com を開き、データベース名(wordpress)、ユーザー(wp)、手順 2 のパスワードを入力して、管理者アカウントを作成します。管理者名には「admin」以外を選んでください。
速く、安全に
- ファイアウォール:
ufw allow 22/tcp && ufw allow 'Nginx Full' && ufw enable。 - 更新: ダッシュボードで WordPress 本体の自動更新を、サーバーではセキュリティ更新の自動化を有効にします。
- キャッシュ: 小さなマシンでは、ページキャッシュのプラグインがどんなサーバー調整よりも効きます。
- バックアップ: Managed Backups はサーバー全体の日次復元ポイントを保持します(月額 $2、年額プランは無料)。持ち運べるコピーには、
mysqldump wordpress > wp.sqlとwp-contentフォルダーを加えましょう。 - メモリ: 1 GB のサーバーでは、2 GB のスワップファイルを追加してください。
関連
- Web サイト向け VPS
- HTTPS 付きの Nginx リバースプロキシ
- Plausible Analytics 向け VPS:サイトのための Cookie なしの統計
コメント
まだコメントはありません。最初になりましょう。