xamppのバーチャルホスト設定|ポートベース編

例年よりもちょっと遅めのスケジュールでやっと桜が咲いたと思いきや、今日の雨でほとんどが散ってしまいそうです。ちょっぴり寂しいフジカワです、こんにちは。ええ、焼肉が食べられなくて、です。

ローカルでxamppを使ったテスト環境

以前から、
スグラボ » xamppバーチャルホストを使ってみる

スグラボ » xampp内サイトをLAN内の別のPCから閲覧
というエントリーを出しておりましたが、弄るたびに分からなくなるxamppです(笑)。
今回ちょっとした理由で再インストールをしたのですが、
これを機会にもう少しシンプルに使えないものかと色々と試した挙句、
ちょっと今までよりも楽な方法を見つけたのでご紹介。

今回はポートベースで

今回の目標は2つ
1.サーバ側(xampp)設定が簡単であること
2.社内の複数PCから確認するので、クライアント側の設定が不要なこと
を実現する。
以下その方法になります。

環境と条件

・OS:Windows Vista(残念っ!)
・xamppのインストール場所:C:xampp
・xamppのバージョン:1.7.3
・ポート番号でバーチャルホストを構築し、そのポート番号は8080、8090、9090の3つとする。
・バーチャルホストで運用したい各ディレクトリは
C:/xampp/htdocs
C:/xampp/htdocs/xxxxx
C:/xampp/htdocs/yyyyy
とする。

httpd.confの編集

まずはApacheの設定ファイルであるhttpd.confの編集をします。
あ、その前に、この手の作業に慣れていない人は編集前のオリジナルファイルをコピーして別のファイル名で保存しておくことをオススメします。僕も今だに訳が分からなくなる事があります。
いや、むしろ訳が分からなくなる事を繰り返すことでスキルが上がっていくことが多いので、「安心して訳分からなくなれる」ように、いつでも最初に戻れるようにしておきましょう。
■ファイル保存場所
C:xamppapacheconf/httpd.conf

■変更内容
httpd.conf47行目くらいの

Listen 80

の部分を変えます。
使いたいポート番号に変えるだけです。今回のように複数ある場合は、改行して複数を既述します。

Listen 8080
Listen 8090
Listen 9090

とすればOK。
要するに「Apacheでポート8080、ポート8090、ポート9090の3つを使うからよろしくねー」という宣言。

httpd-vhosts.confの編集

続きまして今度は上で宣言したポート3つにアクセスした時にどこに繋げるかの設定。
バーチャルホストそのものの機能設定です。
■ファイル保存場所
C:xamppapacheconf/extra/httpd-vhosts.conf

■変更内容 その1
19行目の

##NameVirtualHost *:80

NameVirtualHost *:8080

に。最初の「##」を消すのを忘れずに。
そして他の2つのポートも上記に倣って追記します。その結果、

NameVirtualHost *:8080
NameVirtualHost *:8090
NameVirtualHost *:9090

となります。

■変更内容 その2
httpd-vhosts.confはもう一箇所変更します。
「どのポートをどのファイルに繋げるのか」の具体的指示になります。

##<virtualHost *:80>
    ##ServerAdmin postmaster@dummy-host.localhost
    ##DocumentRoot "C:/xampp/htdocs/dummy-host.localhost"
    ##ServerName dummy-host.localhost
    ##ServerAlias www.dummy-host.localhost
    ##ErrorLog "logs/dummy-host.localhost-error.log"
    ##CustomLog "logs/dummy-host.localhost-access.log" combined
##</virtualHost>

という部分のコメントアウトを消して有効化し、さらに内容を書き換えて使うわけですが、
それよりもこれはこのままコメントアウトさせておいて、新しく追記したほうが吉。作業時間が短くてすむし、デフォルトの例文をいつでも参照できるので。
というわけで、以下のように追記。

<virtualHost *:8080>
    DocumentRoot "C:/xampp/htdocs"
    ServerName localhost
</virtualHost>

<virtualHost *:8090>
    DocumentRoot "C:/xampp/htdocs/xxxxx"
    ServerName localhost
</virtualHost>

<virtualHost *:9090>
    DocumentRoot "C:/xampp/htdocs/yyyyy"
    ServerName localhost
</virtualHost>

これでOK。

では確認してみましょう

ここまで作業したらxamppのapacheを一度再起動します。
xamppのコンパネを開いて
xamppconf xamppのバーチャルホスト設定|ポートベース編
赤い枠の「stop」で停止、再度「start」で起動すればOK。

ここまで作業が終わったら後はブラウザでチェックするのみ。
早速お好きなブラウザを開いて

http://localhost:8080/

http://localhost:8090/

http://localhost:9090/

を観てみましょう。
それぞれで予想してたコンテンツが見られればOKです。

ちなみに今回の目標2である「社内の複数PCから確認するので、クライアント側の設定が不要なこと」についてだけど、固定IPがこのPCに振られていればOK。
このxamppをインストールしているPCに振られている固定IPが「192.168.1.12」としたら
同一ネットワークにある別のPCのブラウザで

http://192.168.1.12:8080

http://192.168.1.12:8090

http://192.168.1.12:9090

としてみましょう。同じものが見えると思います。

えー

というわけで、今のところ僕にとって一番使いやすそうな方法をご紹介しました。
他にもっと良い方法や便利な使い方をご存知の方いらっしゃいましたらご連絡お待ちしております。

3個のコメントあるよ

  1. [...] スグラボ » xamppのバーチャルホスト設定|ポートベース編 で、自分で書いておきながらつまずいたので解決策のメモ。 (エントリー書いた時はちゃんと繋がったはずなんだけどなー) [...]

  2. » xamppにMT5をインストールするのまとめ tiptop

    [...] バーチャルホストの設定 サブドメイン方式が会社のPCでは使えなくて(原因不明)ポートでわけた。 参考サイト: スグラボ » xamppのバーチャルホスト設定|ポートベース編 [...]

  3. [...] スグラボ ? xamppのバーチャルホスト設定|ポートベース編 [...]

コメントを残してみる

コメント