PC-More

PCの便利化、Windowsのフリーソフトや、カスタマイズ方法の紹介。

ローカルのApacheのHTTPサーバーでポート別に複数サイトを表示する

Windows環境で、ローカルにApacheをインストールし、ポートごとに別のサイト(別のフォルダ)を表示する方法です。

既にApacheをインストール済みの場合はこちらのみをご覧ください。

目次

ダウンロード

こちらの「Apache」のダウンロードページを開き、

32ビット版のWindowsをお使いの場合は、
「vc_redist_x86」と、「httpd〜win32〜.zip」をクリックして、
それぞれのファイルを保存します。

64ビット版のWindowsをお使いの場合は、
「vc_redist_x64」と、「httpd〜win64〜.zip」をクリックして、
それぞれのファイルを保存します。

ページに広告があるので間違えないようにご注意ください。

画像
(※ページのデザインは異なる場合があります。)

お使いのWindowsが32ビット版か64ビット版か分からない場合は、キーボードのWindowsロゴのキーを押しながら、「Pause/Break」キーを押すと確認出来ます。

それでも分からない場合は、「vc_redist_x64」がインストール出来るか試してみてください。インストール出来れば64ビット版のWindowsです。

Visual Studio C++ ランタイム のインストール

先程ダウンロードした「vc_redist〜」 (.exe)ファイルを、ダブルクリックして実行します。
画像

警告が出た場合は、「はい」や、「了解してインストール」や、「詳細情報」→「実行」等をクリックして続行します。

ライセンス条項および使用条件に同意する」にチェックを入れ、「インストール」をクリックします。
画像

処理が完了したら、「閉じる」をクリックします。
画像

Apacheのインストール

保存した圧縮ファイル「httpd〜」(.zip)ファイルを、右クリック等から展開 (解凍)します。

展開して出来たフォルダを開き、
Apache〜」フォルダを右クリックし、
コピー」をクリックします。
画像

Cドライブを開き、何もアイコンが無い余白部分右クリックし、「貼り付け」をクリックします。

すると、「Apache〜」フォルダが、Cドライブ直下にコピーされます。
(これには管理者権限が必要です。)
画像

これがApacheのインストール先フォルダとなります。

Apacheの設定

Apacheのインストール先フォルダを開き、
conf」フォルダを開き、
httpd.conf」ファイルをメモ帳等のテキストエディタで開きます。
画像

ファイルを開いたら、上部に改行を入れてスペースを作り、
そこへ以下の文章をコピー&ペーストします。

#http://localhost:50001/
Listen 50001
<VirtualHost localhost:50001>
DocumentRoot "C:/Apache●●/htdocs/aaa"
</VirtualHost>

#http://localhost:50002/
Listen 50002
<VirtualHost localhost:50002>
DocumentRoot "C:/Apache●●/htdocs/bbb"
</VirtualHost>

上記の「#http://localhost:〜/」はアクセス用のコメントですので、不要なら削除してください。

50001」「50002」は、ポート番号を表しています。これは、お好きな番号に変更してください。「49152〜65535」の範囲が望ましいです。

「DocumentRoot "C:/Apache●●/htdocs/〜"」は、そのポートで表示されるサイトのルート(最上位)となるフォルダを表しています。このパス(場所)はご自身の環境に合わせて書き換えてください。そのままでは動作しません。「\」区切りのパス(場所)で記述しても表示されますが、「/」区切りで記述するのが通例です。「Apache●●」に入れる数値は半角にしてください。

各サイトのフォルダは、「C:\Apache〜\htdocs」配下に置くようにしてください。それ以外だと動作しない場合があります。

以下のような感じになればOKです。
画像

サイト用のフォルダの準備

Apacheのインストール先フォルダを開き、
htdocs」フォルダを開き、
そこにポート別に表示したいサイトのフォルダを置きます。

以下の例では「aaa」「bbb」フォルダです。それぞれ別のサイトです。
画像

それらのフォルダ内には、動作確認が出来るように、「index.html」等のファイルを作成して置いてください。既にご自身が作成したファイルがある場合はそれで結構です。
画像

Apacheのテスト起動

Apacheのインストール先フォルダを開き、
bin」フォルダを開き、
httpd」(.exe)ファイルをダブルクリックして実行します。
画像

警告が出た場合は、「はい」や、「了解してインストール」や、「詳細情報」→「実行」等をクリックして続行します。

ファイアウォールの画面が出た場合は、そのPCでサイトの表示をテストするだけなら、外部からのアクセスを許可する必要はありませんから、「キャンセル」をクリックしてください。
画像

黒いウィンドウが表示されて、何もエラーメッセージが表示されず、そのままウィンドウが閉じなければ成功です。
画像

この起動方法の場合は、ウィンドウが表示されている間のみApacheが有効となります。閉じれば終了です。

Apacheの動作確認

WEBブラウザ上部にあるアドレスバー等から、「http://localhost:ポート番号/」にアクセスし、サイトがきちんと表示されるか確認します。

今回の例で言うと、
http://localhost:50001/」や
http://localhost:50002/」等です。

以下は、「50001」や「50002」とだけ書いた「index.html」を置いていた場合のブラウザでの表示例です。
画像
画像

サービスへの登録

ApacheをWindowsのサービスに登録しておくと、Windows起動時に自動実行されます。方法は以下の通りです。

以下の文章の「C:\Apache●●\bin」部分を正しいフォルダのパス(場所)に書き換え、
枠内の全文をコピーし、
コマンドプロンプトを管理者権限で起動し、
コマンドプロンプトの画面内を右クリックして貼り付けます。
すると、この文章がコマンドプロンプト上で実行されます。
完了」と表示されれば完了です。コマンドプロンプトを閉じます。

上記の意味は、以下の通りです。

pushd "C:\Apache●●\bin" (作業フォルダを「bin」フォルダに変更
httpd -k uninstall (以前のApacheのアンインストール
httpd -k install (Apacheサービスの登録
httpd -k start (Apacheの開始
echo.完了 (「完了」と表示する

httpd -k uninstall」は、既にApacheがサービスに登録されている場合用なので、それ以外ではエラーとなりますが、それは問題ありません。

サービス登録後、PCを再起動すると、Windows起動時にApacheがサービスとして実行されます。

バックグラウンド(裏)で動作しますので、Apacheのウィンドウは見えません。

サービスからの削除

以下の文章の「C:\Apache●●\bin」部分を正しいフォルダのパス(場所)に書き換え、
枠内の全文をコピーし、
コマンドプロンプトを管理者権限で起動し、
コマンドプロンプトの画面内を右クリックして貼り付けます。
すると、この文章がコマンドプロンプト上で実行されます。
完了」と表示されれば完了です。コマンドプロンプトを閉じます。

上記の意味は、以下の通りです。

pushd "C:\Apache●●\bin" (作業フォルダを「bin」フォルダに変更
httpd -k stop (Apacheの停止
httpd -k uninstall (Apacheサービスの削除
echo.完了 (「完了」と表示する

Apacheのフォルダ名を変更したい場合

まず、Apacheをサービスに登録してある場合は、サービスへの登録を削除してください。

次に、Apacheのフォルダ名を変更し、
そのフォルダを開き、
conf」フォルダを開き、
httpd.conf」をメモ帳等でファイルを開き、
Define SRVROOT "c:/Apache〜"」の、
Apache〜」部分も、変更後のフォルダ名に変更してください。
画像

サービスに登録してあった場合は、Apacheのテスト起動を行い、問題無ければ、サービスに登録し直してください。