開発環境
PR

Laragon番外編2|Apache・nginxを追加・切り替える|WordPressをnginxで動かす

LaragonでApacheとnginxを切り替え、WordPressをnginxで動かす番外編2のアイキャッチ
toshi
記事内に商品プロモーションを含む場合があります
最終更新:2026年10月6日

Laragon番外編1では、複数バージョンを扱う仕組みや bin・data・www・usr などの役割、Quick addと複数バージョン管理の違いを整理しました。

今回は、その知識を使って実際の開発環境へ進みます。

Laragon番外編2では、Apacheとnginxという2つのWebサーバーを扱い、WordPressをnginxで動かすところまで確認します。

Apacheからnginxへ変更すると、WordPress本体が別物になるわけではありません。

変わるのは、ブラウザから届いたリクエストを受け取り、WordPressへ渡すWebサーバー側の仕組みです。

番外編1で「Laragonが複数の環境をどう管理するのか」を理解しました。

番外編2では、その仕組みをApacheとnginxで実際に確認する実践編へ進みます。

今回のポイントは、単に「nginxを起動できた」で終わらないことです。

WordPressのトップページ・管理画面・投稿ページ・固定ページ・パーマリンク・画像・プラグインなどを確認し、必要であればApacheへ戻せるところまで検証します。

目次
  1. Laragon番外編2で学ぶこと
    1. 番外編1で理解した仕組みを実際に使う
  2. Apacheとnginxは何が違う?
    1. Apacheは.htaccessを利用できる
    2. nginxでは.htaccessを利用しない
    3. nginxの方が必ず速いわけではない
  3. 作業前に現在のLaragon環境を確認する
    1. Apacheが正常に動いていることを確認する
    2. Apacheとnginxのポートを確認する
  4. Laragonにnginxがあるか確認する
    1. nginxがない場合はQuick addから追加する
  5. Apacheからnginxへ切り替える基本の流れ
    1. Apacheとnginxを同時に起動できる場合
    2. 同じポートを使う場合は片方を停止する
  6. LaragonのAuto Virtual Hostsを理解する
    1. Apache側のVirtual Host
    2. nginx側のVirtual Host
    3. auto.から始まるファイルは自動生成される
  7. WordPressをnginxで動かすと何が変わる?
    1. WordPress公式ドキュメントでもtry_filesを使う設定例がある
    2. 現在のLaragonでは最初に設定内容を確認する
    3. パーマリンクで404になる場合に設定を確認する
  8. nginx設定を変更する場合の流れ
    1. 1. 現在のVirtual Hostを保存する
    2. 2. auto.を外す必要があるか判断する
    3. 3. WordPress用のlocation設定を確認する
    4. 4. nginxの設定構文を確認する
    5. 5. nginxをReloadする
  9. nginxの設定をもっと詳しく知りたい方へ
  10. WordPressをnginxで表示する
    1. トップページを確認する
    2. WordPress管理画面を確認する
    3. 投稿ページ・固定ページを確認する
    4. パーマリンクを確認する
    5. 画像を確認する
    6. プラグインを確認する
  11. nginxへ切り替えた後のチェックリスト
  12. 問題があったらApacheへ戻す
    1. nginxを停止する
    2. Apacheを起動する
    3. WordPressを再確認する
  13. Apacheとnginxのどちらを使えばいい?
  14. Laragon番外編2のまとめ
  15. 次に読む|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は.htaccessを利用できる

Apacheでは、Webサイトのディレクトリ内にある .htaccess から設定を追加・変更できます。

WordPressでは、パーマリンクのURL書き換えなどで .htaccess が関係します。

WordPress管理画面からパーマリンク設定を変更したときに、Apache環境ではWordPress側から .htaccess を更新できる場合があります。

nginxでは.htaccessを利用しない

nginxには、Apacheの .htaccess と同じ仕組みがありません。

そのため、WordPressディレクトリに .htaccess が存在していても、nginxはその内容をApacheと同じようには読み込みません。

URL書き換えやリダイレクトなどは、nginx側の設定ファイルで処理します。

Apacheからnginxへ切り替えるときは、WordPressそのものだけを見るのではなく、.htaccess に依存していた処理がないか確認することが重要です。

パーマリンクだけでなく、セキュリティ・アクセス制御・リダイレクトなどを .htaccess へ追加している場合も確認します。

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本体に表示されている、現在のApache・nginxのポートを優先して確認します。

Laragonにnginxがあるか確認する

現在のLaragonにnginxが含まれていれば、新しく追加する必要はありません。

Laragonのメニューやサービス一覧を確認し、nginxが利用できる状態か確認します。

nginxがない場合はQuick addから追加する

現在のLaragonでは、nginxはQuick addの対象です。

nginxがない場合は、LaragonのQuick addから追加できます。

操作の考え方は、

Menu → Tools → Quick add → Nginx

です。

利用できる具体的なバージョンは、その時点のLaragon側の一覧を確認します。

すでにnginxが存在する場合は、Quick addを実行する必要はありません。

まず現在の環境を確認してから、不足しているものだけを追加します。

Apacheからnginxへ切り替える基本の流れ

基本は「確認 → nginxを用意 → 起動状態を変更 → Reload → WordPressを確認」の流れです。

  1. Apache環境でWordPressの正常状態を確認する
  2. nginxが利用できることを確認する
  3. Apache・nginxのポートを確認する
  4. 必要に応じてApacheを停止し、nginxを起動する
  5. LaragonをReloadする
  6. WordPressへアクセスする
  7. パーマリンクや管理画面まで確認する

上の画像は、Apacheからnginxへ移る考え方を整理した説明図です。


実際のLaragonでは、バージョン・メニュー表示・ポート番号などが環境によって異なるため、手元のLaragon画面を優先します。

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などで再生成される可能性があります。

プロジェクト固有のnginx設定を自分で保持したい場合は、Laragon公式の考え方に従ってファイル名から auto. を外して管理します。


例:

auto.example.test.conf

↓

example.test.conf

ただし、最初から変更する必要はありません。

まず自動生成された内容を確認し、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

の内容を確認します。

404が出たからといって、いきなり設定ファイルを上書きしないでください。

現在の設定内容、プロジェクト名、Document Root、ポートなどを確認してから変更します。

nginx設定を変更する場合の流れ

設定変更が必要な場合は、「バックアップ → 設定確認 → 構文確認 → Reload」の順で進めます。

1. 現在のVirtual Hostを保存する

編集前の .conf ファイルをコピーするなどして、元へ戻せる状態を作ります。

2. auto.を外す必要があるか判断する

Laragonの自動生成に上書きされたくないプロジェクト固有設定なら、ファイル名から auto. を外します。

3. WordPress用のlocation設定を確認する

WordPressのパーマリンクを処理する location / と try_files を確認します。

必要な場合だけ
WordPress公式ドキュメントでもtry_filesを使う設定例がある
の考え方を反映します。

4. nginxの設定構文を確認する

設定を書き換えた場合は、Reloadする前に構文エラーがないか確認します。

nginx -t
PowerShell

Laragon Terminalで実行してください。

正常なら、概ね次のようなメッセージが表示されます。

syntax is ok
test is successful
Plaintext

5. nginxをReloadする

構文に問題がなければnginxへ設定を反映します。

Laragon GUIからReloadできます。

CLIから行う場合のコマンドもあります。

%laragon_root%\laragon reload nginx
BAT (Batchfile)

%laragon_root% はLaragonのインストール先を保持する環境変数で、通常は C:\laragon です。

たとえば通常のインストール先なら、実質的には次のイメージです。

C:\laragon\laragon reload nginx
BAT (Batchfile)

nginx設定に構文エラーがある状態で変更を進めると、nginxが正常に起動できなくなる場合があります。


設定変更後は構文確認を行ってからReloadすることを基本にします。

nginxの設定をもっと詳しく知りたい方へ

ここまでで、Laragonのnginx設定ではVirtual Host・try_files・PHPへの受け渡しなどが関係することが分かりました。

Laragon番外編2では、Apacheからnginxへ切り替えてWordPressが正常に動作するところまでを中心に確認しています。

nginxの設定ファイルそのものを読めるようになりたい場合は、発展記事でさらに詳しく掘り下げます。

発展|nginx設定を詳しく学ぶ
Laragon番外編2-1|Apacheからnginxへ切り替える実践手順|WordPress編
Laragon番外編2-1|Apacheからnginxへ切り替える実践手順|WordPress編

発展記事では、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とnginxのどちらを使えばいい?

学習段階では、どちらか一方を「正解」と決める必要はありません。

Apacheには .htaccess を利用できる分かりやすさがあります。

nginxにはサーバー側で設定を集中管理する特徴があります。

WordPressの本番環境でも両方使われています。

今回のようにLaragonで両方を試せるのであれば、

同じWordPressをApacheとnginxの両方で動かして違いを理解すること自体に価値があります。

ToshiLabのLaragon番外編では、「どちらが最強か」を決めるのではなく、違いを実際に動かして理解し、目的に応じて選べる状態を作ることを重視します。

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:別冊(必要な方だけ)

PR:『プロフェッショナルWebプログラミング Laravel 改訂版』
Laravelを「使える」から「実務で組める」へ。環境構築からテスト・デプロイまで、より本格的なWeb開発へ進みたい方におすすめの一冊です。
※価格や在庫、版数は変わるため、最終確認はリンク先でお願いします。

番外編1では「複数環境を管理する仕組み」を理解しました。

番外編2では、その仕組みを使って実際にWebサーバーを変えると何が変わるのかを確認しました。

次は、WordPressにとってもうひとつ重要な部分であるデータベースへ進みます。

次に読む|Laragon番外編3へ

Laragon番外編2ではWebサーバーを扱いました。次の番外編3では、MySQLとphpMyAdminを扱います。

WordPressでは、記事本文・設定・ユーザー情報など多くのデータがMySQLへ保存されています。

そのため、PHPやWebサーバー以上に、データを保護しながら進めることが重要です。

次に読む|Laragon番外編3
Laragon番外編2|Apache・nginxを追加・切り替える|WordPressをnginxで動かす
Laragon番外編2|Apache・nginxを追加・切り替える|WordPressをnginxで動かす

番外編2で「Webリクエストを処理する環境」を確認し、番外編3では「WordPressのデータを保存する環境」へ進みます。

Webサーバーとデータベースの役割を分けて理解していきます。

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

ABOUT ME
toshi
toshi
フルスタックエンジニア
C型肝炎や感染症の闘病を経て現在通院中
フリーランスとして今日を生きる、それがすべて。
静かな光の中で、歩みを止めずに生きていく。
実験大好きなので色々とやっていきます。
記事URLをコピーしました