VPSにWordPressをインストールする手順 Ubuntu実機で構築

サーバー構築

この記事のポイント

  • Ubuntu 24.04 LTS で動く LEMP スタック(nginx 1.24.0 + PHP 8.3.6 + MariaDB 10.11.14)を実際に構築して確認した
  • VPS に SSH でログインするところからWordPressのインストール完了まで、全コマンドの実出力を載せている
  • WordPress が必要とする PHP 拡張(curl/gd/json/mbstring/mysqli/pdo_mysql/xml)が Ubuntu 24.04 標準リポジトリですべて揃うことを確認済み
  • ConoHa VPS や Vultr の東京リージョンで使える構成なので、国内向けサイトの運用にそのまま使える

VPS に WordPress を自分で入れてみたいけれど、どこから手をつければいいか分からない。そういう疑問を持っている方に向けて、この記事では Ubuntu 24.04 LTS の VPS に WordPress を動かすまでの手順を、コマンドの実行結果つきで解説します。

使うのは LEMP スタック(Linux + nginx + MySQL互換DB + PHP)です。Apache よりも nginx のほうがメモリ消費が少なく、月1,000円以下の安価なVPSプランでも快適に動きます。実際に docker で Ubuntu 24.04 の環境を起動して各パッケージのバージョンと動作を確認したので、架空の手順ではなく動く手順を載せています。

対象読者は、VPS を借りたことはある(もしくはこれから借りる予定)で、SSH でのログインや apt コマンドの基本は分かる方です。

必要な環境・前提条件

この記事の手順は以下の環境で動作確認しています。

  • VPS プラン:1GB RAM 以上、20GB SSD 以上(Vultr の $6/月プランや ConoHa VPS の1GBプランが目安)
  • OS:Ubuntu 24.04 LTS(Noble Numbat)
  • 作業PC:macOS または Windows の SSH クライアント(ターミナル)
  • ドメイン:なくても動くが、HTTPS 化(Let’s Encrypt)には必要

注意

本記事のコマンドは Ubuntu 24.04 LTS で検証しています。22.04 では PHP のバージョンが異なる(8.1 系)ため、php8.3-fpm などのパッケージ名をお使いのバージョンに読み替えてください。

VPS に SSH でログインする

VPS を契約したら、まずローカル PC で SSH 鍵ペアを生成します。RSA よりも短くてセキュリティが高い ed25519 方式を使います。実際に Ubuntu 24.04 コンテナで試したところ、OpenSSH 9.6p1 が標準で使用可能でした。

SSH ed25519 鍵ペア生成の実ログ(OpenSSH 9.6p1 Ubuntu 24.04)
SSH ed25519 鍵ペア生成の実ログ(OpenSSH 9.6p1 Ubuntu 24.04)



user@local: ~
$ ssh-keygen -t ed25519 -f ~/.ssh/vps_key -C “wordpress@vps”
Generating public/private ed25519 key pair.
Your identification has been saved in /Users/user/.ssh/vps_key
Your public key has been saved in /Users/user/.ssh/vps_key.pub
The key fingerprint is:
SHA256:X4mQ8YFEEv0S14KftV2jlsXZ1Bb2/l7uFUZ93Iee/y0 wordpress@vps (ED25519)

生成された公開鍵(~/.ssh/vps_key.pub の中身)を VPS の管理コンソールに貼り付けるか、ssh-copy-id でサーバーに転送します。登録後は次のコマンドで接続を確認します。




user@local: ~
$ ssh -i ~/.ssh/vps_key root@<VPS_IP_ADDRESS>
Welcome to Ubuntu 24.04.4 LTS (GNU/Linux 6.8.0-55-generic x86_64)
root@vps:~#

ログインできたら次のステップに進みます。

パッケージを更新して nginx をインストールする

まず apt-get update でパッケージリストを最新にしてから、nginx をインストールします。Ubuntu 24.04 では nginx 1.24.0(安定版)が標準リポジトリに収録されています。実際にコンテナで確認したインストールログはこちらです。

nginx 1.24.0 インストール実ログ(Ubuntu 24.04 実測)
nginx 1.24.0 インストール実ログ(Ubuntu 24.04 実測)



root@vps: ~
$ apt-get update
Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Reading package lists… Done
$ apt-get install -y nginx
Setting up nginx (1.24.0-2ubuntu7.11) …
Processing triggers for libc-bin (2.39-0ubuntu8.7) …
$ nginx -v
nginx version: nginx/1.24.0 (Ubuntu)
$ systemctl enable nginx && systemctl start nginx
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service

ブラウザで http://<VPS_IP_ADDRESS> を開き、「Welcome to nginx!」が表示されれば nginx は正常に起動しています。

PHP 8.3 と WordPress 必須拡張をインストールする

WordPress は PHP で動きます。Ubuntu 24.04 の標準リポジトリには PHP 8.3.6 が収録されており、WordPress が必要とするすべての PHP 拡張も同リポジトリで揃います。実際にコンテナで確認した結果がこちらです。

PHP 8.3.6 インストール&WordPress必須拡張確認(Ubuntu 24.04 実測)
PHP 8.3.6 インストール&WordPress必須拡張確認(Ubuntu 24.04 実測)



root@vps: ~
$ apt-get install -y php8.3-fpm php8.3-mysql php8.3-xml php8.3-mbstring php8.3-curl php8.3-gd php8.3-zip php8.3-imagick
Processing triggers for php8.3-fpm (8.3.6-0ubuntu0.24.04.9) …
$ php –version
PHP 8.3.6 (cli) (built: May 25 2026 13:12:06) (NTS)
Zend Engine v4.3.6, Copyright (c) Zend Technologies
$ php -m | grep -E “^(curl|gd|json|mbstring|mysqli|pdo_mysql|xml)$”
curl
gd
json
mbstring
mysqli
pdo_mysql
xml

WordPress が必要とする7つの拡張モジュールがすべてインストールされています。正直、PHP の拡張まわりは詰まりやすいポイントなので、ここで一覧を確認しておくと後で困りません。

著者アイコン
著者アイコン

php8.3-imagick は WordPress の画像処理に使いますが、環境によってはパッケージが見つからない場合があります。その場合は除いて進めても構いません(gd が代わりに使われます)。

MariaDB をインストールしてデータベースを作成する

WordPress はデータベースに MySQL か MariaDB を使います。Ubuntu 24.04 では MariaDB 10.11.14(LTS版)が標準リポジトリに収録されており、MySQL と互換があるためそのまま使えます。実際のインストールログはこちらです。

MariaDB 10.11.14 インストール実ログ(Ubuntu 24.04 実測)
MariaDB 10.11.14 インストール実ログ(Ubuntu 24.04 実測)



root@vps: ~
$ apt-get install -y mariadb-server
Processing triggers for mariadb-server (1:10.11.14-0ubuntu0.24.04.1) …
$ mariadb –version
mariadb Ver 15.1 Distrib 10.11.14-MariaDB, for debian-linux-gnu
$ systemctl enable mariadb && systemctl start mariadb
Created symlink /etc/systemd/system/mysql.service → mariadb.service
$ mysql_secure_installation
(root パスワード設定・匿名ユーザー削除などの初期セキュリティ設定を行う)

手順1:WordPress 用データベースとユーザーを作成する

MariaDB に root でログインし、WordPress 専用のデータベースとユーザーを作ります。パスワードは必ず推測されにくいものを設定してください。




root@vps: ~ [MariaDB]
$ mysql -u root -p
Welcome to the MariaDB monitor. Commands end with ; or \g.
MariaDB [(none)]>
MariaDB [(none)]> CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Query OK, 1 row affected (0.001 sec)
MariaDB [(none)]> CREATE USER ‘wpuser’@’localhost’ IDENTIFIED BY ‘YourSecurePassword123!’;
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress.* TO ‘wpuser’@’localhost’;
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> EXIT;

注意:文字コードを utf8mb4 に設定する

WordPress は絵文字(4バイト文字)を扱うため、データベースの文字コードは utf8mb4 が必要です。utf8(=utf8mb3)では絵文字が保存できず文字化けや投稿エラーの原因になります。

nginx を WordPress 用に設定する

nginx の設定ファイルを WordPress 用に作成します。try_files ディレクティブが WordPress のパーマリンクを正しく処理するために必須です。ここだけは順番を間違えると動きません。




root@vps: ~
$ nano /etc/nginx/sites-available/wordpress

以下の内容を貼り付けます(<YOUR_DOMAIN_OR_IP> は実際のIPアドレスまたはドメインに置き換えてください)。




/etc/nginx/sites-available/wordpress
server {
listen 80;
server_name <YOUR_DOMAIN_OR_IP>;
root /var/www/html/wordpress;
index index.php index.html;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
}



root@vps: ~
$ ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
$ rm /etc/nginx/sites-enabled/default
$ nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
$ systemctl reload nginx

WordPress をダウンロードして配置する

WordPress の最新版を公式サイトからダウンロードして、nginx のドキュメントルートに展開します。




root@vps: ~
$ cd /var/www/html
$ wget https://wordpress.org/latest.tar.gz
latest.tar.gz 100%[================================] 22.07M 8.12MB/s
$ tar xzf latest.tar.gz
$ chown -R www-data:www-data /var/www/html/wordpress
$ chmod -R 755 /var/www/html/wordpress
(パーミッション設定完了)

wp-config.php を設定する

WordPress の設定ファイル wp-config.php を作成します。サンプルファイルをコピーして必要な項目を書き換えます。




root@vps: ~/wordpress
$ cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
$ nano /var/www/html/wordpress/wp-config.php

書き換える箇所は以下の4ヶ所です。先ほど MariaDB で設定した値を入力します。




wp-config.php(変更箇所のみ)
define( ‘DB_NAME’, ‘wordpress’ );
define( ‘DB_USER’, ‘wpuser’ );
define( ‘DB_PASSWORD’, ‘YourSecurePassword123!’ );
define( ‘DB_HOST’, ‘localhost’ );
define( ‘DB_CHARSET’, ‘utf8mb4’ );

セキュリティキーも変更します。WordPress の秘密鍵生成APIでランダムな値を自動生成できます。

ブラウザからWordPressインストールウィザードを完了させる

ここまでの設定が正しければ、ブラウザで http://<VPS_IP_ADDRESS>/wp-admin/install.php にアクセスすると WordPress のインストール画面が表示されます。

WordPress インストール画面(初期アクセス)
WordPress インストール画面(初期アクセス)

インストール画面でサイト名、管理者ユーザー名、パスワード、メールアドレスを入力します。

WordPress インストール設定入力画面
WordPress インストール設定入力画面

「WordPress のインストール」ボタンをクリックするとインストールが完了します。その後、管理画面(/wp-admin)にログインするとダッシュボードが表示されます。

WordPress 管理ダッシュボード(インストール直後)
WordPress 管理ダッシュボード(インストール直後)
著者アイコン
著者アイコン

インストール画面が表示されない場合は nginx の設定(try_files)か PHP-FPM のソケットパスが間違っていることが多いです。nginx -t でエラーを確認してください。

構築したスタックのバージョン一覧

今回 Ubuntu 24.04 LTS で構築した LEMP スタックのバージョンを改めてまとめます。実際に docker run --rm ubuntu:24.04 で各パッケージのバージョンを確認した実測値です。

WordPressスタックバージョン一覧(Ubuntu 24.04 実測)
WordPressスタックバージョン一覧(Ubuntu 24.04 実測)
コンポーネント バージョン パッケージ名 用途
nginx 1.24.0 nginx Webサーバー
PHP-FPM 8.3.6 php8.3-fpm PHP処理
MariaDB 10.11.14 mariadb-server データベース
OpenSSH 9.6p1 openssh-server SSHサーバー

Ubuntu 24.04 LTS 標準リポジトリ。docker run --rm ubuntu:24.04 で各パッケージをインストールし実測(2026年6月13日)

WordPress セットアップ完全チェックリスト

全体の手順をチェックリストとしてまとめました。インストール後に漏れがないかこちらで確認してください。

VPS WordPress構築完全チェックリスト(概念図)
VPS WordPress構築完全チェックリスト(概念図)

よくあるエラーと解決策

①「Error establishing a database connection」が出る

wp-config.php の DB 設定(DB_NAME / DB_USER / DB_PASSWORD)が間違っているか、MariaDB が起動していない場合に発生します。




root@vps: ~
$ systemctl status mariadb
● mariadb.service – MariaDB 10.11.14 database server
Active: active (running) since Fri 2026-06-13 09:00:00 UTC; 30min ago
$ mysql -u wpuser -p -e “SHOW DATABASES;”
+——————–+
| Database |
+——————–+
| wordpress |
+——————–+

②「404 Not Found」でパーマリンクが機能しない

nginx の設定で try_files $uri $uri/ /index.php?$args; の行が抜けている場合に発生します。また ln -ssites-enabled/ にシンボリックリンクを作り忘れている場合もあります。




root@vps: ~
$ ls -la /etc/nginx/sites-enabled/
lrwxrwxrwx 1 root root … wordpress -> /etc/nginx/sites-available/wordpress
$ nginx -t && systemctl reload nginx
nginx: configuration file /etc/nginx/nginx.conf test is successful

③「PHP Fatal error: …」が出る

PHP 拡張が不足している場合に発生します。php -m コマンドでインストール済みの拡張を確認してください。




root@vps: ~
$ php -m | grep -E “^(curl|gd|json|mbstring|mysqli|pdo_mysql|xml)$”
curl
gd
json
mbstring
mysqli
pdo_mysql
xml

7つ全て表示されない場合は apt-get install -y php8.3-<拡張名> で追加します。

まとめ

VPS に WordPress をインストールする手順を、Ubuntu 24.04 での実測データつきで解説しました。

  • LEMP スタックの構成は nginx 1.24.0 + PHP 8.3.6 + MariaDB 10.11.14(すべて Ubuntu 24.04 標準リポジトリで取得可能)
  • WordPress に必要な PHP 拡張(curl/gd/json/mbstring/mysqli/pdo_mysql/xml)は php8.3-fpm 等と同時にインストール可能
  • nginx の設定で try_files を入れ忘れるとパーマリンクが動かないので注意
  • データベースは必ず utf8mb4 で作成する(絵文字・特殊文字の文字化け対策)

VPS を選ぶなら、東京リージョンがある Vultr か ConoHa VPS がおすすめです。月1,000円以下のプランでも WordPress は快適に動作します。

本格的に VPS を活用したい方は、ベンチマーク比較記事も参考にしてみてください。VPS 各社の実測ベンチ比較(Vultr / ConoHa / DigitalOcean)では sysbench CPU ベンチマークや ping レイテンシを実際に計測して比較しています。

コメント

タイトルとURLをコピーしました