すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:Linux インスタンスで WordPress Web サイトを手動で構築

最終更新日:Dec 25, 2025

Web サイト環境を完全に制御するために、LNMP スタックを手動でデプロイし、WordPress をインストールすることができます。これにより、ブログやポータルサイトを柔軟に構築できます。

事前準備

操作手順

このトピックでは、Alibaba Cloud Linux 3 と WordPress 6.4.4 を例として使用します。

ステップ 1:LNMP 環境のデプロイ

  1. ECS インスタンスにログインします。

    1. ECS コンソール - インスタンスに移動します。上部のナビゲーションバーで、対象のリージョンとリソースグループを選択します。

    2. 対象インスタンスの詳細ページに移動します。 [接続] をクリックし、[ワークベンチ] を選択します。ページのプロンプトに従ってターミナルにログインします。

  2. LNMP スタックをデプロイします

    Nginx、MySQL、PHP などのコアコンポーネントをインストールします。

    WordPress は特定のバージョンの PHP と MySQL に依存します。バージョンの不一致は WordPress のインストール失敗の原因となります。依存関係の詳細については、「WordPress の互換性」をご参照ください。

ステップ 2:WordPress データベースの作成

WordPress 専用のデータベースとデータベースユーザーを作成します。

  1. MySQL にログインします。LNMP 環境をデプロイしたときに設定したデータベースのパスワードを使用します。

    mysql -u root -p
  2. データベースとユーザーを作成し、権限を付与します。

    後で使用するために、データベース名、ユーザー名、パスワードを記録しておきます。

    -- WORDPRESS_DATABASE という名前のデータベースを作成
    CREATE DATABASE WORDPRESS_DATABASE;
    
    -- 専用ユーザー WORDPRESS_USER を作成し、パスワードを設定します。パスワードは 12 文字以上で、大文字、小文字、数字、特殊文字を含む強力なパスワードを設定することを推奨します。
    CREATE USER '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>@'localhost' IDENTIFIED BY '<span class="var-span" contenteditable="true" data-var="WORDPRESS_PASSWORD">WORDPRESS_PASSWORD'</span>;
    
    -- このユーザーに wordpress データベースのすべての権限を付与
    GRANT ALL PRIVILEGES ON wordpress.* TO '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>@'localhost';
    
    -- 権限をフラッシュして設定を適用
    FLUSH PRIVILEGES;
    
    -- MySQL を終了
    EXIT;
    デフォルトでは、MySQL 5.7 以降にはパスワード検証プラグインがインストールされています。パスワードは 8~30 文字で、大文字、小文字、数字、特殊文字を含む必要があります。サポートされている特殊文字には、()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/ が含まれます。

ステップ 3:WordPress のダウンロードと設定

  1. Nginx の Web サイトのルートディレクトリに移動し、WordPress 6.4.4 の中国語版をダウンロードします。

    WordPress の英語版をインストールするには、URL を https://wordpress.org/wordpress-6.4.4.zip に置き換えてください。後続のステップでも、圧縮パッケージ名を wordpress-6.4.4.zip に置き換える必要があります。
    sudo cd /usr/share/nginx/html
    sudo wget https://cn.wordpress.org/wordpress-6.4.4-zh_CN.zip
  2. unzip コマンドをインストールし、WordPress パッケージを解凍します。

    sudo yum install unzip -y
    sudo unzip wordpress-6.4.4-zh_CN.zip
  3. wp-config-sample.php ファイルを wp-config.php にコピーし、元のファイルをバックアップとして保持します。

    cd /usr/share/nginx/html/wordpress
    sudo cp wp-config-sample.php wp-config.php
  4. 設定ファイルを編集します。ステップ 2 で作成したデータベース名、ユーザー名、パスワードなどのデータベース情報を入力します。

    sudo vim wp-config.php

    i キーを押して編集モードに入ります。

    /** WordPress のためのデータベース名 */
    define('DB_NAME', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_DATABASE">WORDPRESS_DATABASE'</span>);
    
    /** MySQL データベースのユーザー名 */
    define('DB_USER', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>);
    
    /** MySQL データベースのパスワード */
    define('DB_PASSWORD', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_PASSWORD">WORDPRESS_PASSWORD'</span>);
    
    /** MySQL のホスト名 */
    define('DB_HOST', 'localhost');

    変更後、Esc キーを押し、:wq と入力して Enter キーを押し、ファイルを保存して終了します。

ステップ 4:Nginx の設定

Nginx のデフォルトのサイト設定を変更して、PHP リクエストを正しく処理するようにします。

  1. デフォルトの設定をバックアップし、新しい Nginx 設定ファイルを作成します。

    sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
    sudo vim /etc/nginx/conf.d/default.conf
  2. Nginx 設定ファイルを変更します。

    i キーを押して編集モードに入ります。server ブロックと location ~ .php$ ブロックで、root の後の内容を WordPress のルートディレクトリに置き換えます。この例では、WordPress のルートディレクトリは /usr/share/nginx/html/wordpress です。

    image

    Esc キーを押し、:wq と入力してから Enter キーを押して、設定ファイルを保存して終了します。

  3. 設定構文を確認します。

    syntax is ok が表示された場合は、Nginx を再起動できます。

    sudo nginx -t
    構文エラーが報告された場合は、sudo mv /etc/nginx/conf.d/default.conf.bak /etc/nginx/conf.d/default.conf を実行してデフォルト設定を復元できます。
  4. Nginx を再起動して構成を適用します。

    sudo systemctl restart nginx

ステップ 5:WordPress Web サイトのインストールとログイン

サーバー側の設定が完了したら、ブラウザを使用して WordPress を初期化する必要があります。

  1. ローカルマシンでブラウザを開き、http://<ECS インスタンスのパブリック IP アドレス> にアクセスして WordPress のインストールページに移動します。

  2. ウェブサイトの基本情報として、[サイトのタイトル]、管理者の [ユーザー名][パスワード][メールアドレス] を入力します。 次に、[WordPress をインストール] をクリックします。

  3. インストールが完了したら、[ログイン] をクリックします。前のステップで設定したユーザー名とパスワードを使用してログインします。

    ログインに成功すると、WordPress Web サイトが構築され、実行されていることを示します。詳細については、「WordPress 公式ドキュメント」をご参照ください。

次のステップ

FTP を使用したファイルの管理

FTP を使用して WordPress のテーマやプラグインをアップロードするには、「Linux インスタンスで FTP サイトを構築する」必要があります。

ドメイン名の名前解決と HTTPS の設定

IP アドレスを使用して Web サイトにアクセスするのはプロフェッショナルではなく、安全でもありません。Web サイトにドメイン名を関連付け、HTTPS 暗号化を有効にすることを推奨します。

  1. ドメイン名の登録と ICP 登録の申請

    • ドメイン名をお持ちでない場合は、Alibaba Cloud で「ドメイン名を登録」できます。

    • Web サイトが中国本土の Alibaba Cloud サーバーでホストされている場合は、ドメイン名の ICP 登録を申請する必要があります。詳細については、「ICP 登録プロセス」をご参照ください。

  2. ドメイン名の名前解決の設定

    ドメイン名を ECS インスタンスのパブリック IP アドレスに名前解決します。

  3. インスタンスのパブリック IP アドレスを新しいドメイン名に置き換えます。

    1. インスタンスにリモート接続し、MySQL データベースにログインします。

      mysql -u root -p
    2. WordPress データベースに切り替え、ドメイン名を設定します。

      public_ip をインスタンスのパブリック IP アドレスに、domain をご利用のドメイン名に置き換えます。

      USE wordpress;
      UPDATE wp_options SET option_value = replace(option_value, 'http://PUBLIC_IP', 'http://DOMAIN') WHERE option_name = 'home' OR option_name = 'siteurl';
      EXIT;
  4. SSL 証明書の設定 (HTTPS) 

    SSL 証明書をデプロイする」ことで、Web サイトの HTTPS による暗号化データ転送が可能になります。これにより、ユーザーのプライバシーが保護され、ブラウザの信頼性と検索エンジン最適化 (SEO) のランキングが向上します。

よくある質問

パブリック IP アドレスを使用して WordPress にアクセスできないのはなぜですか?

  • セキュリティグループの確認:インスタンスのセキュリティグループでポート 80 が許可されていることを確認します。

  • ファイアウォールの確認:firewalld などのオペレーティングシステムの内部ファイアウォールがポート 80 をブロックしていないことを確認します。

  • サービスステータスの確認:ECS インスタンスで sudo systemctl status nginxsudo systemctl status php-fpm を実行し、サービスが active (running) 状態であることを確認します。

  • ポートリッスンの確認:ポート 80 がリッスンされていることを確認します。

問題のトラブルシューティング方法の詳細については、「インスタンスにデプロイされたサービスにアクセスできない場合の対処方法」をご参照ください。

WordPress でパーマリンクを設定した後、ページにアクセスできなくなるのはなぜですか?

Web サイトを静的にすると、検索エンジンによるインデックス作成が容易になります。WordPress サイトのパーマリンクを設定する前に、まず Nginx サーバーで静的ルールを設定する必要があります。

  1. インスタンスにリモート接続し、Nginx 設定ファイルを開きます。

    sudo vim /etc/nginx/conf.d/default.conf

    i キーを押して編集モードに入ります。location / ブロックに、次のコードを追加します。

    try_files $uri $uri/ /index.php?$args;

    Esc キーを押し、:wq と入力してから Enter キーを押して、設定ファイルを保存して終了します。

  2. Nginx サービスを再起動して設定を適用します。

    sudo systemctl restart nginx

WordPress の更新やテーマ/プラグインのアップロード時に、FTP ログイン認証情報の入力を求められたり、ディレクトリを作成できないと表示されたりするのはなぜですか?

この問題は、WordPress の設定ファイル、テーマ、またはプラグインの権限が不十分なために発生する可能性があります。次の手順で問題を解決できます。

  1. ECS インスタンスにログインし、WordPress 設定ファイルを開きます。

    sudo vim /usr/share/nginx/html/wordpress/wp-config.php

    i キーを押して編集モードに入ります。ファイルの末尾に、次のコードを追加します。

    define("FS_METHOD","direct");
    define("FS_CHMOD_DIR", 0777);
    define("FS_CHMOD_FILE", 0777);

    Esc キーを押し、:wq と入力してから Enter キーを押して、設定ファイルを保存して終了します。

  2. WordPress ダッシュボードに戻り、ページをリフレッシュします。これにより、FTP ログイン認証情報の入力を求められる問題が解決するはずです。

    ディレクトリを作成できない問題が解決しない場合は、Web サイトのルートディレクトリに対する権限を持つユーザーを Nginx ユーザー nginx に変更します。

    sudo chown -R nginx /usr/share/nginx/html/wordpress

WordPress イメージ内の MySQL 5.7 データベースのデフォルトのユーザー名とパスワードを変更するにはどうすればよいですか?

  1. ECS インスタンスにリモート接続し、MySQL データベースにログインします。

    mysql -u root -p
  2. mysql データベースに移動し、ユーザー名を表示します。

    use mysql;
    select user from mysql.user;
  3. データベースのユーザー名とパスワードを変更します。

    • データベースのユーザー名を新しいユーザー名に変更します。

      UPDATE user SET user='NEW_USER_NAME' WHERE user='USER_NAME';

      たとえば、ユーザー名を root から admin に変更するには、次のようにします。

      UPDATE mysql.user SET user='admin' WHERE user='root';
    • データベースユーザーのパスワードを変更します。

      ALTER USER 'USER_NAME'@'localhost' IDENTIFIED BY 'PASSWORD';

      たとえば、root ユーザーのパスワードを Password@2025! に変更するには、次のようにします。

      ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password@2025!';
  4. 権限をフラッシュして変更を適用し、MySQL データベースを終了します。

    FLUSH PRIVILEGES; 
    EXIT;

関連ドキュメント