Localツールとは、ローカル環境(自分のPC)にWebサーバやDB、WordPress環境を構築できるツールで、以下からDLできる。
https://localwp.com/
LocalツールでWordPressサイトを作成した際に、「This is a port conflict with this site’s domain.」と表示された時の対応方法を紹介する。
筆者のマシン | |
---|---|
Mac | mac mini (M1, 2020) |
OS | Sequoia バージョン 15.5 |
Localツール | Version 9.2.4+6788 |
ここでは次の手順で説明する。
- はじめに
- 状況の確認
- localhost ルーターモードへ変更
- WordPress画面を確認
- HTTPS接続について
1. はじめに
筆者の環境では、Mac mini に標準で搭載されている Apache httpd を稼働しており、使用ポートは80である。
% sudo lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 8095 root 4u IPv6 0xe755010baa99781c 0t0 TCP *:http (LISTEN)
上記の状態でLocalツールをDL・インストールし、サイト(サイト名は「test050526」)を作成したところ、Localツール画面上部に以下の警告メッセージが表示された。
この状態でLocalツール上の「Open site」ボタンを押下しサイトを表示すると、WordPressサイトトップページは表示されず、以下のように「It works! Apple httpd」が表示される。尚、この時のURLは「test050526.local」(サイト名.local)である。
ブラウザに表示された内容は、筆者の環境でMacの標準Apacheで稼働するWebサイトのトップページ(http://localhost:80)と同じ内容である。
更にLocalツール上の「WP Admin」ボタンを押下しWordPressの管理画面(管理者画面)を開くと、管理画面が表示されず以下のように「Not Found」となる。
本記事では、これらへ対応しLocalツールで作成したサイトのWordPressが正しく稼働・表示する手順を紹介する。
2. 状況の確認
Localツール画面上部の警告メッセージにある「Learn more.」リンクをクリックする(以下の赤枠)。
Localツールのヘルプ「What is Router Mode?」ページ(以下URL)が表示される。
https://localwp.com/help-docs/advanced/router-mode/
ここを読むと、Localツールはポートに関連して以下2つのモードを使い分けることがわかる。(説明欄は翻訳ソフトにて翻訳)
ルーターモード | 説明 |
---|---|
Site Domain Router Mode | Localが実行するデフォルトのモードです。このモードでは、Localはポート80をリッスンする「ルーター」を起動し、トラフィックをLocalが管理する個々のサイトに誘導します。各サイトのドメインは次のようになります。example.local |
localhost Router Mode | このフォールバックモードでは、ローカルルーターを起動せず、代わりにコンピュータの専用ポートを使用して各サイトに直接アクセスします。このモードを使用すると、ドメインは次のようになります。localhost:10005 |
Localツールは、デフォルトでは Site Domain ルーターモードとなっており、それは80ポートをListen(使用)すると書いてある。
80ポートはすでに標準インストールのApacheで使用中であるため競合したと考える。
Localツールの画面を再度確認すると、以下のように確かに「Site Domain」という項目があり、値が「test050526.local」(サイト名.local)となっている。これは「Open Site」ボタンでブラウザを表示した時のURLである。
3. localhost ルーターモードへ変更
筆者は標準インストールされているApacheを80ポートで動かしたままLocalツールでサイトを動作させたい。
そのため、Site Domain ではなく、localhost ルーターモードを使用することにした。
localhostルーターモードへの変更手順はいくつかあるが、今回は以下手順で実施した。
- Localツールの左上にある人アイコンから「Preference」を選択
- Preference画面で「Advanced」を選択し、「Router mode」項目を「Site domain」から「localhost」へ変更
- 画面右下の「Apply」を押下
- Preference画面は自動的に閉じないため画面右上「X」マークを押下して画面を閉じる
- localhostルーターモードになったことを確認する
- 画面の「Site host」欄の値が「localhost:10030」となっており、10030ポートを使用するように変更されたことが分かる
4. WordPress画面を確認
Localツール上の「Open site」ボタンを押下しサイトを表示すると、Macの標準Apacheで稼働するWebサイトではなく、以下のようにWordPressのファーストページが正しく表示されるようになった。
ブラウザのアドレスは「localhost:10030」となっており、先ほどはアドレスが「test050526.local」であったため、ルータモードの切り替えによりドメインとポートが変わったことも分かる。
次にLocalツール上の「WP Admin」ボタンを押下しWordPressの管理画面を開くと、こちらも以下のように正しく管理画面が表示されるようになった。
以上のように、ルータモードをデフォルトの Site domain から localhostルーターモードへ変更することで、標準インストールのApacheを80ポートで稼働したまま、LocalツールでWordPressを動かすことができるようになった。
5. HTTPS接続について
ちなみに、Localツールのlocalhostルーターモードは HTTPS サポート外である。
HTTPS接続を使いたい人は、標準インストールのApatchを停止してLocalツールを起動するか、もしくは標準インストールのApacheポートを80以外にするなどし、Site Domain ルーターモードを使うようにする必要がある。
以上