英四郎のApache HTTP Server 2.2.6 httpd.conf の設定
 
 
 
   

バーチャルホストの作成       「VirtualHost (http://aaa.bbbb.com) URLでのホームページ掲載」
バーチャルホスト用のconf作成  「(vhosts.conf) の作成」
個人用コンテンツディレクトリ    「(http://www.bbbb.com/~aaaa) URLでのホームページ掲載」
ユーザ認証 ディレクトリの作成  「(ID & Password で入室する方法)」

 

 
       
 
・httpd.con の開き方と注意事項
 
   

Apache HTTP Server 2.2.6 の「httpd.conf」を開きます。
インストール先のフォルダ「Apache2.2」→「conf」→「httpd.con」をエディタで開きます。

エディタが無い場合は、「httpd.con」ファイルを右クリックで
「プログラムから開く」→「推奨されたプログラム」→「Notepad」または「WordPad」で開きます。
「推奨されたプログラム」に表示されていない場合は「ほかのプログラム」の中を探してみてください。
 
 
 
   

・「httpd.con」が正常に動作していることを前提として書き加えていきます。
 まだ、動作していない場合は「Apache HTTP Server httpd.confの設定と起動」を参考にしてください。

 
 
 
   
仮の名称を下記の通りとします。各自置き換えてください。
・インストール先は「C:\server\apache2.2」
・ ドメインは「xxxx.com」とします。
・サーバーマシンのIPAddressは「192.168.1.100」
・ TCP 80番
・MyPage/Friend/…のWebサイトの作成
 
 
 
   
文字色の意味は下記の通りです。
・グレーは原文です。
・黒はインストール時等に書き換えられた文字です。
・赤は追加した文字です。
・緑は注意書きです。
 
 
 
     
   
 
バーチャルホストの作成 (httpd.conf VirtualHost の設定)
  「http://aaa.bbbb.com」 形式でのURL表示 (とりあえず動作するだけの記載です。)

「http://mypage.xxxx.com」と「http://friend.xxxx.com」の複数のWebサイト(バーチャルホスト)の作成
ホームページ用のファイルの格納先フォルダは「D:\home\mypage」と「D:\home\friend」です。
 
 
 
 
   

# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName localhost:80

ServerName www.xxxx.com*:80

NameVirtualHost *:80
# My Page-----------------
<VirtualHost *:80>
ServerName mypage.xxxx.com
DocumentRoot "D:\Home\mypage"
</VirtualHost>


# My Friend------------------
<VirtualHost *:80>
ServerName friende.xxxx.com
DocumentRoot "D:\Home\friend"
</VirtualHost>

 
 
 
     
     
 
 
●バーチャルホスト数が増えて管理しにくい場合は、別のファイルを作成して管理します。

・httpd.conf の最後の行に 「Include conf/vhosts.conf」を追加します。
・C:\server\Apache2.2\conf\に「vhosts.conf」というファイルを作成して、バーチャルホストの設定を記載します。
 ※名称は「virtualh」でも、自分が分かりやすい名称でもかまいません。
 
 
       
   
httpd.conf のVirtual hosts 「Include conf/vhosts.conf」を追加します。
 
   
 
   

# Real-time info on requests and configuration
Include conf/extra/httpd-info.conf

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
Include conf/vhosts.conf

# Local access to the Apache HTTP Server Manual
Include conf/extra/httpd-manual.conf
  ・
  ・
  ・

 
   
 
       
       
   
▼上記で付けた名称でエディタ、Notepadを開いてファイルを作成します。
・C:\server\Apache2.2\conf\に「vhosts.conf」というファイルを作成して、バーチャルホストの設定を記載します。
 
   
 
   

NameVirtualHost *:80

# xxxx Page---------------------
<VirtualHost *:80>
ServerName www.xxxx.com
DocumentRoot "D:\Home\xxxx"
</VirtualHost>

# My Page------------------
<VirtualHost *:80>
ServerName mypage.xxxx.com
DocumentRoot "D:\Home\mypage"
</VirtualHost>

# My Friend------------------
<VirtualHost *:80>
ServerName friende.xxxx.com
DocumentRoot "D:\Home\friend"
</VirtualHost>
   ・
   ・
   ・

 
 
 
   
▲上記のように家族、友人のページ「mypage .xxxx.com」「friend .xxxx.com」…と順次書き加えていってください。
 ホームページを作成したファイルは「DocumentRoot "D:\Home\mypage"」
 で指定した階層に各フォルダを作成して、htmlを入れてください


フォルダはどこに指定してもかまわないのですが、階層が深くならないようにと
分かりやすくまとめた方が良いかと思います。

 
 
       
       
     
●個人用コンテンツディレクトリ    「(http://www.bbbb.com/~aaaa) URLでのホームページ掲載」

 
 
       
       
       
       
       
   
 
■IDとパスワードの設定で特定ユーザのみ入室可能にします。(ベーシック認証)
 
 
       
   

 
▼各部屋(フォルダ)に入室するためには、IDとPasswordが必要になります。

「D:/home/secret/myroom_01」「D:/home/secret/myroom_02」のフォルダにリンクした場合
IDとパスワードを要求します。

 

 
 
 
   

# htpasswd My Room ------------------------------
<Directory "D:/home/secret/myroom_01">
AuthType Basic
AuthName "※入室するためには認証が必要です。"
AuthUserFile "C:/server/apache2.2/secr/room_01"
require valid-user
</Directory>

# htpasswd Friends Room --------------------------
<Directory "D:/home/secret/myroom_02">
AuthType Basic
AuthName "※入室するためには認証が必要です。"
AuthUserFile "C:/server/apche2.2/secr/room_02"
require valid-user
</Directory>

 
 
 
       
       
   
 
・IDとパスワードの登録方法
 
 
   


・「スタート」→「プログラム」→「アクセサリ」→「コマンドプロンプト」を開きます。
@>の後に、「cd 」スペースを打ち込み「c:\server\Apache2.2\bin」と打ち込みます。
>cd c:\server\Apache2.2\bin となり「Enter」キーを
AC:\server\Apache2.2\bin>htpasswd -c room01 hide 
BNew Password:****** パスワードを入力します。
CRe-type new password: ****** 同じく確認用にもう一度入力します。

・「c:\server\Apache2.2\bin」のフォルダ内に「room01」という暗号化されたパスワードファイルが作成されます。
そのままでもいいのですが、まとめて管理しやすくするために上記で設定したフォルダに格納します。

※実際は、バラバラに格納しsecr、secret等の名称は付けない方がよい。
今は、分かりやすくするためと、こうしても動作します、と言う一例です。
  ▼

 
 

 
   

 
 

 
   
 
 

 
   
 
各ファイルを AuthUserFile
 で指定した場所に格納してできあがりです。
ユーザ名=ID  パスワード を入力して、認証を受けて入室してください。