IT関連

Apacheのバーチャルホストの設定 XAMPPやLAMP

投稿日:2019年3月12日 更新日:

備忘録なので内容は適当です。

バーチャルホストとは、1台のマシン、1つのApacheというウェブサーバで、複数のアプリやHPを立ち上げようというもの。

特にXAMPPでテスト環境を作るとき、ホームページの練習もWordPressもLaravelの練習もやりたいといっても、待ち受けがhttp://127.0.0.1だけでは足りない。そういうときにフォルダを分けて運用しようとするときに使う。

 

ディレクトリ構成

まずディレクトリはapacheの直下に「conf」ディレクトリがあり、その直下に「extra」ディレクトリがある。

基本的な設定はご存知のとおり、「conf」ディレクトリにある、「httpd.conf」で行う。

バーチャルホストの設定も「httpd.conf」でも出来るが、「extra」のなかにある「vhosts.conf」で行う。

 

httpd.confの設定

バーチャルホストの設定はextra/vhosts.confで行うが、まずはデフォルトで立ち上がっているものの設定変更や、待ち受けポートの設定はこちらで行う。

ポートの指定

ちなみにウェブなどのHTTP通信は基本ポート番号は80を使うことになっている。デフォルト80は暗黙の了解なので、http://qryheavy.comにアクセスしたのと、http://qryheavy.com:80にアクセスしたのと付けたのと同じことになる。

 

今回はバーチャルホストの話なので、1つのIPアドレスだけでは無理なので、ポート番号を追加で指定しなければいけない。

 

Listen80というのがあるので、その下に待ち受けしたいポート番号を入力するだけ。今回は8080とする。

Listen80
Listen8080

これでhttp://IPアドレス:8080にアクセスできるようになった。

 

 

ポート80の既存設定をコメントアウト

ポート80はデフォルト設定なので、すでにhttpd.confにDocumentRootやServerAdminやディレクトリ設定などがされている。

今回はポート80もバーチャルホスト側で設定しようと思うので、不要項目をコメントアウトする。

#ServerAdmin postmaster@localhost
#ServerName localhost:80
#DocumentRoot “C:/xampp/htdocs”

 

アクセス制限

もともと下記の設定があると思うが、

<Directory />
AllowOverride All
Require all granted
</Directory>

バーチャルホスト側の設定でオーバーライドやアクセス権の設定をするので、一旦下記のようにシャットアウトしておく。

<Directory>
AllowOverride none
Require all denied
</Directory>

 

httpd-vhosts.confの設定

続いてバーチャルホストの設定。ディレクトリは違うが書けば自動的に読みこまれるみたい。

ちなみにこのファイルは基本全文コメントあうとされていて、初期段階では何も読まない。

末尾に追加していく。

 

#——————————————
#システム:WebSystem(試作)
#構造:手作りMVC
#データベース:DB2
#ファイヤーウォール:許可
#——————————————
<VirtualHost *:80>

ServerAdmin hogehoge@gmail.com
DocumentRoot “C:/xampp/htdocs/”
ServerName localhost

<Directory “C:/xampp/htdocs”>
AllowOverride All
Require all granted
</Directory>

</VirtualHost>

 

#——————————————
#システム:俺のT(実用)
#構造:WordPress
#データベース:MySQL(my_tipslog)
#ファイヤーウォール:不許可
#——————————————-
<VirtualHost *:8080>

ServerAdmin hogehoge@gmail.com
DocumentRoot “C:/xampp/htdocs2/”
ServerName localhost

<Directory “C:/xampp/htdocs2”>
AllowOverride All
Require all granted
</Directory>

</VirtualHost>

 

こんな感じ。先頭が#ならばコメントアウトになるので、解りやすくサーバに関するコメントを書いておく。

ファイヤーウォールとは、Windowsの場合は外部からのアクセスを許さない設定になっているので、自分のXAMPPで作ったプログラムを他人に利用してもらいたければ、開通設定する必要がある。その有無ということ。要するに特に意味はない。

今回はローカルなので、RequireやAllowOverrideは緩め。

 

 

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

Laravel エラー集 未完成

POSTが失敗する The page has expired die to inactivity.Please refresh and try agein. というエラーメッセージでPOSTが失敗する …

Bootstrap4でツールチップ Tooltip ポップアップ

自分の備忘録です。間違えはご容赦ください。   マウスオーバー 要素をマウスオーバーすると、マウスオーバーした要素の上にポップアップをふわっと表示する。 カスタムデータ属性placement …

AS400/IBMi RPG COMP命令

社内プログラムでCOMPを多用しているのがあったので、どういう動きをするのか調べてみた。   試しに

を実行してみた。 フラ …

Vimエディタ 簡単な説明

Windowsではテキストファイルを編集するとき、メモ帳やTeraPadなどを使いますが、LinuxではVimというのを使います。   たかがテキストの編集だろと思ったら大間違い。 何も知ら …

AS400/IBMi AS400からPDFをダイヤログを出さずに画面上に表示

この記事は以前成功したときの備忘録を一応取っておくだけのもので、現在は使っていません。 このやり方は設定の手順も多いですし、DocuWorksに吐き出した方が編集もできて便利です。   ドキ …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に