この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:5
ページ更新者:guest
更新日時:2026-06-11 07:12:00

タイトル: Wordpressのインストール方法
SEOタイトル: WordPress インストール手順(CentOS + nginx + MySQL + PHP-FPM)完全ガイド

この記事の要点
  • WordPress を CentOS + nginx + MySQL + PHP-FPM でセルフホストする手順を解説
  • 前提: nginx / MySQL / PHP-FPM の事前インストール、php-mysql 接続ライブラリの導入
  • MySQL でデータベース・ユーザーを作成し、WordPress 用に権限を付与
  • ブラウザから初回アクセスでセットアップ画面が表示される — DB 接続情報を入力
  • 本番運用では HTTPS 化、自動更新、定期バックアップ、不要プラグイン削除を必ず実施

WordPress とは

WordPress は世界で最も使われている OSS の CMS (Content Management System)。ブログ、コーポレートサイト、EC、ポートフォリオまで幅広く対応します。本稿は CentOS + nginx + MySQL + PHP-FPM 構成でのインストール手順をまとめます。

前提条件

ミドルウェア役割
nginxWeb サーバー (リバースプロキシとして PHP-FPM に転送)
MySQL / MariaDB記事・設定の保存先 DB
PHP-FPMWordPress 本体の実行
php-mysqlPHP <-> MySQL の接続ライブラリ

nginx / MySQL / PHP のインストールは別途完了済みである前提で進めます。

1. WordPress 本体のダウンロード

公式リリースページから最新版を確認します。

# 配布ページ
https://ja.wordpress.org/releases/
# 例: バージョンを指定してダウンロード (本稿では参考バージョン)
wget https://ja.wordpress.org/wordpress-4.9.6-ja.tar.gz

# 解凍
tar zxvf wordpress-4.9.6-ja.tar.gz

# 解凍された wordpress ディレクトリを適切な場所に配置
sudo mv wordpress /var/www/html/wordpress
sudo chown -R nginx:nginx /var/www/html/wordpress

注意: 上記は記事執筆時のバージョン。常に最新版をダウンロードしてください。古いバージョンは脆弱性リスクがあります。

2. nginx の設定

WordPress 用の server ブロックを /etc/nginx/conf.d/wordpress.conf 等に追加。

server {
    listen 80;
    server_name example.com;
    root /var/www/html/wordpress;
    index index.php index.html;

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

    location ~ \.php$ {
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # 静的ファイルキャッシュ (任意)
    location ~* \.(jpg|jpeg|png|gif|css|js|ico|svg)$ {
        expires 30d;
        add_header Cache-Control &quot;public, no-transform&quot;;
    }
}
sudo nginx -t                # 設定の文法チェック
sudo systemctl reload nginx  # 反映

3. PHP-MySQL 接続ライブラリのインストール

sudo yum -y install php-mysql
sudo systemctl restart php-fpm

新しい PHP (7+) なら php-mysqlnd がデフォルトで入っていることもあります。php -m | grep mysql で確認。

4. MySQL に WordPress 用 DB を作成

-- MySQL に root でログインしてから実行
CREATE DATABASE wordpress
    DEFAULT CHARACTER SET utf8
    COLLATE utf8_unicode_ci;

CREATE USER 'wordpress'@'localhost' IDENTIFIED BY '強固なパスワード';

GRANT ALL ON wordpress.* TO 'wordpress'@'localhost';
FLUSH PRIVILEGES;

-- 確認
SHOW DATABASES;
SELECT user, host FROM mysql.user WHERE user = 'wordpress';

パスワードは長くランダムに。後でセットアップ画面で使うので保管しておきます。

5. WordPress 初回セットアップ

ブラウザで http://ドメイン名 にアクセスすると、以下のような初期画面が表示されます。

WordPress 初回セットアップ画面

「さあ、始めましょう!」をクリックして次のステップへ。データベース接続情報を入力します。

項目入力値
データベース名wordpress
ユーザー名wordpress
パスワード手順 4 で設定したパスワード
データベースのホスト名localhost
テーブル接頭辞wp_ (推奨: 推測されにくい接頭辞に変更)

「送信」→「インストール実行」と進みます。

6. サイト情報の入力

次の画面でサイト情報を入力します。

  • サイトのタイトル: 後から変更可
  • ユーザー名: 管理者ユーザー名 (admin 以外を推奨 — 攻撃対象になりやすいため)
  • パスワード: 強固なものを設定
  • メールアドレス: 通知やパスワードリセット用
  • 検索エンジンでの表示: 公開前なら無効にしてインデックスを防ぐ

入力情報はログイン時に必要なのでパスワードマネージャー等に必ず保存しましょう。

7. ログイン

セットアップ完了後、http://ドメイン名/wp-login.php からログイン画面に進めます。手順 6 で設定した認証情報でログイン。

パーマリンク (URL の整形) 設定

初期状態だと URL に index.php が含まれて見栄えが悪いことがあります。管理画面の「設定」→「パーマリンク」で「投稿名」等を選び、nginx の try_files$args を正しく渡せば綺麗な URL になります。

本番運用の必須チェック

項目内容
HTTPS 化Let's Encrypt + certbot で無料 SSL 証明書
自動更新本体 / プラグイン / テーマの自動更新を有効に
不要プラグイン削除使っていないものは脆弱性源
定期バックアップDB と uploads ディレクトリ、wp-config.php を保全
管理者の admin 排除ユーザー名 admin は使わない
ファイル権限wp-config.php は 600、ディレクトリは 755、ファイルは 644
ログイン保護2 要素認証プラグイン、ブルートフォース対策
監視稼働監視 / セキュリティスキャン

wp-config.php の主要設定

<?php
// データベース情報
define('DB_NAME',     'wordpress');
define('DB_USER',     'wordpress');
define('DB_PASSWORD', '強固なパスワード');
define('DB_HOST',     'localhost');
define('DB_CHARSET',  'utf8mb4');
define('DB_COLLATE',  '');

// 認証用ユニークキー (公式ジェネレータで生成)
// https://api.wordpress.org/secret-key/1.1/salt/
define('AUTH_KEY',    '...');
// ...

// テーブル接頭辞 (デフォルト wp_ から変更推奨)
$table_prefix = 'wp_';

// 自動更新
define('WP_AUTO_UPDATE_CORE', true);

// ファイル編集機能を無効化 (セキュリティ)
define('DISALLOW_FILE_EDIT', true);

// デバッグ (本番では false)
define('WP_DEBUG', false);

// HTTPS 経由のみ管理画面アクセス
define('FORCE_SSL_ADMIN', true);

FAQ

Q: Apache でも同じ手順?
A: ほぼ同じ。違いは Web サーバー設定のみ。Apache なら .htaccess でパーマリンクが動く。

Q: Docker で立てるべき?
A: 開発・テスト環境は Docker 推奨。本番は要件次第だが、公式の wordpress イメージ + mariadb の組み合わせが定番。

Q: 古いバージョンのままで大丈夫?
A: ダメ。必ず最新版を使う。旧バージョンは既知の脆弱性で改ざんされやすい。

関連

  • nginx のインストール / 設定
  • MySQL のインストール / 設定
  • PHP-FPM のインストール
  • Let's Encrypt による HTTPS 化