Laragon番外編2|Apache・nginxを追加・切り替える|WordPressをnginxで動かす
Laragon番外編1では、複数バージョンを扱う仕組みや bin・data・www・usr などの役割、Quick addと複数バージョン管理の違いを整理しました。
今回は、その知識を使って実際の開発環境へ進みます。
Laragon番外編2では、Apacheとnginxという2つのWebサーバーを扱い、WordPressをnginxで動かすところまで確認します。
Apacheからnginxへ変更すると、WordPress本体が別物になるわけではありません。
変わるのは、ブラウザから届いたリクエストを受け取り、WordPressへ渡すWebサーバー側の仕組みです。
今回のポイントは、単に「nginxを起動できた」で終わらないことです。
WordPressのトップページ・管理画面・投稿ページ・固定ページ・パーマリンク・画像・プラグインなどを確認し、必要であればApacheへ戻せるところまで検証します。
- Laragon番外編2で学ぶこと
- Apacheとnginxは何が違う?
- 作業前に現在のLaragon環境を確認する
- Laragonにnginxがあるか確認する
- Apacheからnginxへ切り替える基本の流れ
- LaragonのAuto Virtual Hostsを理解する
- WordPressをnginxで動かすと何が変わる?
- nginx設定を変更する場合の流れ
- nginxの設定をもっと詳しく知りたい方へ
- WordPressをnginxで表示する
- nginxへ切り替えた後のチェックリスト
- 問題があったらApacheへ戻す
- Apacheとnginxのどちらを使えばいい?
- Laragon番外編2のまとめ
- 次に読む|Laragon番外編3へ
Laragon番外編2で学ぶこと
今回の目的は、Apacheとnginxの違いを理解したうえで、実際にWordPressをnginx環境で確認することです。
- Apacheとnginxの役割と違い
- Laragonでnginxを追加する方法
- Apacheとnginxの起動状態・ポートの確認
- LaragonのAuto Virtual Hostsとnginx設定ファイル
- WordPressで
.htaccessが使われなくなる理由 - nginxでパーマリンクを処理する仕組み
- nginx設定変更前に確認するポイント
- WordPressをnginxへ切り替えた後の動作確認
- 問題があった場合にApacheへ戻す方法
番外編1で理解した仕組みを実際に使う
番外編1では、Laragon内に複数の環境を共存させ、必要なものを選択・起動・確認する考え方を学びました。
Apacheとnginxでも基本は同じです。
正常に動いているApache環境をいきなり削除せず、nginxを追加して比較・検証します。
この「元の環境を残したまま新しい環境を試す」という考え方は、今回も重要です。
Apacheとnginxは何が違う?
ApacheとnginxはどちらもWebサーバーですが、設定方法やリクエスト処理の考え方に違いがあります。
WordPressから見ると、どちらもブラウザからのアクセスを受け取り、静的ファイルを配信したり、PHPの処理へリクエストを渡したりするための入口です。
しかし、特に大きな違いとして覚えておきたいのが .htaccess の扱いです。
| 項目 | Apache | nginx |
|---|---|---|
| 種類 | Webサーバー | Webサーバー |
| WordPress | 利用可能 | 利用可能 |
.htaccess | 利用する | 利用しない |
| URL書き換え | mod_rewriteなど | nginx設定ファイル |
| Virtual Host | Apache設定 | nginx設定 |
| Laragonでの管理 | 対応 | 対応 |

Apacheは.htaccessを利用できる
Apacheでは、Webサイトのディレクトリ内にある .htaccess から設定を追加・変更できます。
WordPressでは、パーマリンクのURL書き換えなどで .htaccess が関係します。
WordPress管理画面からパーマリンク設定を変更したときに、Apache環境ではWordPress側から .htaccess を更新できる場合があります。
nginxでは.htaccessを利用しない
nginxには、Apacheの .htaccess と同じ仕組みがありません。
そのため、WordPressディレクトリに .htaccess が存在していても、nginxはその内容をApacheと同じようには読み込みません。
URL書き換えやリダイレクトなどは、nginx側の設定ファイルで処理します。
nginxの方が必ず速いわけではない
nginxは軽量なWebサーバーとして知られ、静的ファイルの配信や多数の接続を効率よく処理できる設計を持っています。
ただし、
「Apacheからnginxへ変えれば、WordPressが必ず速くなる」とは考えません。
実際の速度は、PHP・データベース・キャッシュ・テーマ・プラグイン・画像・サーバー設定など多くの要素で決まります。
今回の目的は速度競争ではなく、Webサーバーが変わるとWordPressの動かし方や設定がどう変わるかを理解することです。
作業前に現在のLaragon環境を確認する
nginxを追加・起動する前に、現在のApache・nginx・ポート・WordPressの状態を確認します。
ここを記録しておけば、問題が発生したときに元へ戻しやすくなります。
Apacheが正常に動いていることを確認する
まず現在のWordPressをApache環境で開きます。
確認するのは、
- トップページ
- WordPress管理画面
- 投稿ページ
- 固定ページ
- パーマリンク
- 画像
- 主なプラグイン
です。
nginxへ切り替える前の正常状態を基準として残しておきます。
Apacheとnginxのポートを確認する
LaragonではApacheとnginxを別々のサービスとして管理できます。
環境によっては、
- Apache:80 / 443
- nginx:8080 / 8443
のように異なるポートが設定されている場合があります。
一方で、Apacheとnginxを同じ80番・443番で同時に待ち受けさせることはできません。
Laragonにnginxがあるか確認する
現在のLaragonにnginxが含まれていれば、新しく追加する必要はありません。
Laragonのメニューやサービス一覧を確認し、nginxが利用できる状態か確認します。
nginxがない場合はQuick addから追加する
現在のLaragonでは、nginxはQuick addの対象です。
nginxがない場合は、LaragonのQuick addから追加できます。
操作の考え方は、
Menu → Tools → Quick add → Nginx
です。
利用できる具体的なバージョンは、その時点のLaragon側の一覧を確認します。
Apacheからnginxへ切り替える基本の流れ
基本は「確認 → nginxを用意 → 起動状態を変更 → Reload → WordPressを確認」の流れです。
- Apache環境でWordPressの正常状態を確認する
- nginxが利用できることを確認する
- Apache・nginxのポートを確認する
- 必要に応じてApacheを停止し、nginxを起動する
- LaragonをReloadする
- WordPressへアクセスする
- パーマリンクや管理画面まで確認する

Apacheとnginxを同時に起動できる場合
Apacheとnginxが異なるポートを利用していれば、両方を起動できる構成もあります。
これは比較検証には便利です。
ただし、「WordPressをnginxで確認しているつもりが、実際にはApache側を開いていた」という状態を避ける必要があります。
ブラウザで開いているURLとポートまで確認します。
同じポートを使う場合は片方を停止する
Apacheとnginxの両方が80番・443番など同じポートを使用しようとすると競合します。
この場合は、
Apacheを停止 → nginxを起動
という順番で確認します。
元へ戻すときは逆です。
nginxを停止 → Apacheを起動
とします。
LaragonのAuto Virtual Hostsを理解する
Laragonでは、Apache用とnginx用のVirtual Host設定が別々に生成されます。
www にプロジェクトを置き、LaragonをReloadすると、project.test のようなURLを使えるAuto Virtual Hostsが作成されます。
Apache側のVirtual Host
Apacheでは、プロジェクトごとの設定が次の場所に生成されます。
{LARAGON_ROOT}\etc\apache2\sites-enabled\auto.{project}.test.conf
nginx側のVirtual Host
nginxでは、次の場所です。
{LARAGON_ROOT}\etc\nginx\sites-enabled\auto.{project}.test.conf
同じWordPressプロジェクトでも、Apacheとnginxでは別の設定ファイルを使います。
auto.から始まるファイルは自動生成される
ここは重要です。
auto. から始まるVirtual Hostファイルは、Laragonによって自動生成されます。
設定を直接変更しても、後のReloadなどで再生成される可能性があります。
ただし、最初から変更する必要はありません。
まず自動生成された内容を確認し、WordPressが正常に動くか試します。
WordPressをnginxで動かすと何が変わる?
もっとも分かりやすい違いは、.htaccess ではなくnginx設定側でURL処理を行うことです。
WordPressの記事URLが、
/sample-post/
のようなきれいなパーマリンクで表示されるためには、存在しない物理ファイルへのアクセスをWordPressの index.php へ渡す仕組みが必要です。
Apacheではこれを .htaccess とmod_rewriteで処理できます。
nginxでは、nginx設定ファイルで処理します。

WordPress公式ドキュメントでもtry_filesを使う設定例がある
nginxでは、WordPressへリクエストを渡す代表的な設定として try_files を利用します。
location / {
try_files $uri $uri/ /index.php?$args;
}Nginxこの設定は、実際に存在するファイルやディレクトリがあればそれを返し、存在しなければWordPressの index.php へリクエストを渡す考え方です。
現在のLaragonでは最初に設定内容を確認する
ここで、過去のLaragon記事と現在のLaragonを同じものとして扱わないことが重要です。
LaragonのバージョンやVirtual Hostテンプレートの設定によっては、生成されるnginx用プロジェクト設定に、フロントコントローラ型アプリで利用できる try_files が含まれている場合があります。
そのため、
「nginxへ切り替えたら、まず設定ファイルを書き換える」
ではありません。
まずWordPressを開きます。
正常なら、その状態を壊さず使います。
パーマリンクで404になる場合に設定を確認する
トップページは表示できるのに、
- 投稿ページ
- 固定ページ
- カテゴリー
- その他のパーマリンク
が404になる場合は、nginx側のURL書き換え設定を確認します。
この場合に、
{LARAGON_ROOT}\etc\nginx\sites-enabled\auto.{project}.test.conf
の内容を確認します。
nginx設定を変更する場合の流れ
設定変更が必要な場合は、「バックアップ → 設定確認 → 構文確認 → Reload」の順で進めます。
1. 現在のVirtual Hostを保存する
編集前の .conf ファイルをコピーするなどして、元へ戻せる状態を作ります。
2. auto.を外す必要があるか判断する
Laragonの自動生成に上書きされたくないプロジェクト固有設定なら、ファイル名から auto. を外します。
3. WordPress用のlocation設定を確認する
WordPressのパーマリンクを処理する location / と try_files を確認します。
必要な場合だけ
WordPress公式ドキュメントでもtry_filesを使う設定例がある
の考え方を反映します。
4. nginxの設定構文を確認する
設定を書き換えた場合は、Reloadする前に構文エラーがないか確認します。
nginx -tPowerShellLaragon Terminalで実行してください。
正常なら、概ね次のようなメッセージが表示されます。
syntax is ok
test is successfulPlaintext5. nginxをReloadする
構文に問題がなければnginxへ設定を反映します。
Laragon GUIからReloadできます。
CLIから行う場合のコマンドもあります。
%laragon_root%\laragon reload nginxBAT (Batchfile)%laragon_root% はLaragonのインストール先を保持する環境変数で、通常は C:\laragon です。
たとえば通常のインストール先なら、実質的には次のイメージです。
C:\laragon\laragon reload nginxBAT (Batchfile)nginxの設定をもっと詳しく知りたい方へ
ここまでで、Laragonのnginx設定ではVirtual Host・try_files・PHPへの受け渡しなどが関係することが分かりました。
Laragon番外編2では、Apacheからnginxへ切り替えてWordPressが正常に動作するところまでを中心に確認しています。
nginxの設定ファイルそのものを読めるようになりたい場合は、発展記事でさらに詳しく掘り下げます。

発展記事では、nginx.conf・Virtual Host・server・location・try_files・FastCGI・PHP連携まで、実際のLaragon環境を使って確認します。
「設定をコピーする」だけではなく、その設定が何をしているのかを理解し、自分で確認・変更できる状態を目指します。
WordPressをnginxで表示する
nginxが起動し、プロジェクト用Virtual Hostが準備できたらWordPressへアクセスします。
最初に確認するのはトップページだけではありません。
トップページを確認する
まずサイトのトップページを開きます。
正常にHTML・CSS・JavaScript・画像が読み込まれているか確認します。
WordPress管理画面を確認する
次に、
/wp-admin/
へアクセスします。
ログインできるか、管理画面内を移動できるか確認します。
投稿ページ・固定ページを確認する
トップページだけ表示できても、パーマリンク処理に問題があると個別記事で404になることがあります。
必ず投稿ページと固定ページも開きます。
パーマリンクを確認する
WordPress管理画面のパーマリンク設定を確認します。
既存のURL形式で投稿ページが正常に開けば、nginx側のURL処理も機能している可能性が高くなります。
Apacheでは正常、nginxでは個別ページだけ404になる場合は、nginx側のVirtual Host設定を確認します。
画像を確認する
アイキャッチ・本文画像・CSS背景画像などが正常に表示されているか確認します。
画像URLや静的ファイル配信に問題がないことを確認します。
プラグインを確認する
すべてのプラグインを網羅する必要はありません。
まず、
- キャッシュ
- セキュリティ
- リダイレクト
- SEO
- フォーム
など、Webサーバーの動作に関係しやすい主要プラグインを確認します。
特に .htaccess へルールを書き込む前提の機能は注意します。
nginxへ切り替えた後のチェックリスト
Webサーバーを切り替えた後は、「ページが1枚表示された」だけでは成功と判断しません。
- トップページが表示される
- WordPress管理画面へログインできる
- 投稿ページが表示される
- 固定ページが表示される
- パーマリンクが404にならない
- 画像・CSS・JavaScriptが読み込まれる
- 主要プラグインが動作する
- nginxのログに大きなエラーがない
- 必要ならApacheへ戻せる

問題があったらApacheへ戻す
今回の検証で大切なのは、nginxへ変更することよりも「安全に戻せること」です。
Apache環境を削除していなければ、問題が発生したときに元へ戻せます。
nginxを停止する
Apacheと同じポートを利用する構成なら、まずnginxを停止します。
Apacheを起動する
次にApacheを起動します。
必要に応じてLaragonをReloadします。
WordPressを再確認する
nginxへ切り替える前と同じURLでWordPressを開き、
- トップページ
- 管理画面
- 投稿
- 固定ページ
- パーマリンク
を確認します。
Apacheとnginxのどちらを使えばいい?
学習段階では、どちらか一方を「正解」と決める必要はありません。
Apacheには .htaccess を利用できる分かりやすさがあります。
nginxにはサーバー側で設定を集中管理する特徴があります。
WordPressの本番環境でも両方使われています。
今回のようにLaragonで両方を試せるのであれば、
同じWordPressをApacheとnginxの両方で動かして違いを理解すること自体に価値があります。
Laragon番外編2のまとめ
今回は、LaragonでApacheとnginxを扱い、WordPressをnginx環境で確認するための考え方と手順を整理しました。
- ApacheとnginxはどちらもWebサーバー
- LaragonではApacheとnginxを管理できる
- nginxがない場合はQuick addから追加できる
- Apacheとnginxのポート競合に注意する
- LaragonはApache用とnginx用のVirtual Hostを別々に生成する
auto.付きVirtual Hostは自動生成対象- nginxは
.htaccessを利用しない - WordPressのパーマリンクはnginx設定側で処理する
- 現在のLaragonでは、まず自動生成設定を確認してから編集する
- 設定変更前にバックアップし、構文確認後にReloadする
- トップページだけでなく管理画面・投稿・固定ページ・画像・プラグインまで確認する
- 問題があればApacheへ戻せる状態を残しておく
PR:『プロフェッショナルWebプログラミング Laravel 改訂版』
Laravelを「使える」から「実務で組める」へ。環境構築からテスト・デプロイまで、より本格的なWeb開発へ進みたい方におすすめの一冊です。
※価格や在庫、版数は変わるため、最終確認はリンク先でお願いします。
番外編1では「複数環境を管理する仕組み」を理解しました。
番外編2では、その仕組みを使って実際にWebサーバーを変えると何が変わるのかを確認しました。
次は、WordPressにとってもうひとつ重要な部分であるデータベースへ進みます。
次に読む|Laragon番外編3へ
Laragon番外編2ではWebサーバーを扱いました。次の番外編3では、MySQLとphpMyAdminを扱います。
WordPressでは、記事本文・設定・ユーザー情報など多くのデータがMySQLへ保存されています。
そのため、PHPやWebサーバー以上に、データを保護しながら進めることが重要です。

番外編2で「Webリクエストを処理する環境」を確認し、番外編3では「WordPressのデータを保存する環境」へ進みます。
Webサーバーとデータベースの役割を分けて理解していきます。

