Category: Apache

2月 21 2011

ローカルでヴァーチャルドメイン

ローカル環境でバーチャルドメインの設定をする。
domain1とdomain2と2つサイトを

http://localhost/domain1/

http://localhost/domain2/

のようにするのでもいいが、なるべく

http://domain1.localhost/

http://domain2.localhost/

でアクセスできる方がなにかと都合が良い!!

と言うことでApacheを設定
まずはapache/conf/httpd.confでヴァーチャルドメインの設定
#NameVirtualHost *:80のコメントアウトをはずす。
なければ追記。

<Directory “C:/localhost”>
order deny,allow
allow from ALL
</Directory>

があるあたりに

<VirtualHost *:80>
DocumentRoot C:/localhost/domain1/
ServerName domain1.localhost
</VirtualHost<
<VirtualHost *:80>
DocumentRoot C:/localhost/domain2/
ServerName domain2.localhost
</VirtualHost>

と設定してやる。

次にWindows側の設定。
C:\WINDOWS\system32\drivers\etc\hostsを開く

127.0.0.1 localhost

となっているので

127.0.0.1 localhost
127.0.0.1 domain1.localhost
127.0.0.1 domain2.localhost

とヴァーチャルドメイン名を追加。
これでdomain1.localhostとdomain2.localhostをローカルの127.0.0.1へ振るようにする。
これでApacheを再起動すれば

http://domain1.localhost/

http://domain2.localhost/

でアクセスできます。

《参考サイト》
WinXPローカル環境で複数ドメイン管理

2月 17 2011

Apache をWindowsにインストール

WindowsにApacheをインストールする。

このページからWindows用のApacheをダウンロード!今回は2.2系の2.2.17
http://httpd.apache.org/download.cgi
SSLも使うので opensslのWin32 Binary including OpenSSL 0.9.8o (MSI Installer): httpd-2.2.17-win32-x86-openssl-0.9.8o.msi をダウンロード

ダウンロードしたファイルをクリックして実行
I accept the terms in the license agreement で同意。

Network Domain (e.g. somenet.com) ドメイン名

Server Name (e.g. www.somenet.com サーバー名

Administrator’s Email Address (e.g. webmaster@somenet.com) メール
適当にいれてOK

Install Apache HTTP Server 2.0 programs and shortcut for
使用ポートの指定
デフォルトのfor All Users, on Port 80, as a Service — Recommended.でOK

Typical で通常インストール

ディレクトリ指定
こだわりがなければそのままC:\Program Files\Apache Software Foundation\Apache2.2\で
windows7ではProgram Filesじゃないほうがいいようだ
Windows7でApacheインストールと利用する際に注意すべきこと
Program Filesの中のファイルは変更しても元に戻るのだとか。。。


Installをクリックしてインストール開始

完了したら

http://127.0.0.1/へアクセス

It works! と表示されたらOK

続いて/confにあるhttpd.confの編集
行数は2.2.17の場合
phpを使う前提で設定

[179] DocumentRoot “C:/localhost”
// デフォルトはインストールした場所のApache2/htdocsになってる
// 変更したかったら変更 今回はC:直下にlocalhostで設定

[206]
// 179で設定したDocumentRootと同じパスにする

[226] AllowOverride None → AllowOverride All
// httpd.conf の値を .haccess で上書き可能にする

[241] DirectoryIndex index.html → DirectoryIndex index.html index.php
// インデックスにindex.phpを追加

// LoadModuleがi並んでる場所[60~130] あたりへ
LoadModule php5_module “c:/php/php5apache2_2.dll
PHPIniDir “C:/php”
// この2行を追記

// AddTypeが並んでる場所[385]あたりへ
AddType application/x-httpd-php .php
// 追記

これでApacheをrestart

DocumentRoot いかにを書いたinfo.phpを設置
http://localhost/info.php でPHPのインフォメーションが表示されたらOK

《参考サイト》
Apache2 + PHP5 の初期設定
WindowsにApacheをインストールする

9月 06 2010

ダイジェスト認証

/etc/httpd/conf/httpd.confを編集

# vi /etc/httpd/conf/httpd.conf

<Directory /var/www/html> </Directory>の下辺りに以下を追記
認証を行うディレクトリ名membersの場合

# 追記
<Directory /var/www/html/members>
 AuthType digest
 AuthName "Secret Zone"
 AuthDigestDomain /phpMyAdmin/
 AuthUserFile /etc/httpd/.htdigest
 Require user user1
</Directory>

パスワードファイルの作成
/etc/httpdにhtdigestを作成してユーザー登録
ユーザー user1

# htdigest -c /etc/httpd/.htdigest 'Secret Zone' user1
Adding password for user1 in Secret Zone.
New password: /*登録パスワード*/
Re-type new password:  /*パスワード確認*/

登録されたか確認

# cat /etc/httpd/.htdigest
user1:members: /*暗号化されたパスワード*/

httpdを再起動して反映

# /etc/init.d/httpd restart
8月 23 2010

httpdの設定

# yum install httpd

httpd.confを編集

# vi /etc/httpd/conf/httpd.conf

///ServerTokens 44行目辺り
***はそれぞれ
Prod → Apache
Major → Apache/2
Minor → Apache/2.0
Min → Apache/2.0.47
OS → Apache/2.0.47(Debian)
Full → Apache/2.0.47(Debian) PHP/4.2.2
情報を最小限にするためProdに設定

ServerTokens Prod

Timeout 接続要求を受け取ってからタイムアウトになるまでの時間を秒単位で指定
KeepAlive 74行目あたりから87行目あたり
クライアントからの接続要求を受け取った際に、すぐにはHTTPセッションを閉じずに、ある一定の時間までは継続してセッションを保っておく機能。

Timeout 300

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15

///ServerName 265行目あたり

ServerName www.*****.com:80

サーバー名とポート。省略可。省略時はDNSより取得

///UseCanonicalName  274行目あたり

UseCanonicalName On

自サーバーのURLをServerNameとPortから返す

編集したら内容をチェック

# httpd -t
Syntax OK

Syntax OK
エラーの場合はエラー内容がでます

問題なければ起動

# service httpd start

自動起動を設定

# chkconfig httpd on /*自動起動ON*/
# chkconfig --list httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off

以後/etc/httpd/conf/httpd.confの設定を編集したら
再起動

# service httpd restart

もしくは再読み込み

# service httpd reload

をして設定を反映させる。