apache2 (Debian-Ver) の構築
- インストール
- apache.confの設定
- site-available/defaultの設定
- その他諸々の設定
- php4 のインストール
- apache2.conf 設定
- php.ini の設定
- その他諸々の設定
- # apt-get install apache2
これだけ。
最初に、/etc/apache2/ にある apache2.conf の設定をする。
- # vi
/etc/apache2/apache2.conf
変更する箇所を簡単に挙げると…
- L.225
"HostnameLookups" Off を On に変更
- L.298
"LanguagePriority" の最初(デフォルトは en)に ja をもってくる
- L.395 (最終行)
"ServerTokens Prod" を追加
debian の apach2 の特徴の一つは以下の点にある。
/etc/apache2/
sites-available/ 利用可能な仮想ホスト設定ファイルのあるフォルダ
sites-enabled/ 利用する設定のシンボリックリンクが置かれるフォルダ
mods-available/ 利用可能な追加モジュール設定ファイルのあるフォルダ
mods-enabled/ 利用する設定のシンボリックリンクが置かれるフォルダ
mods-available にはインストール済みのモジュール用の設定ファイルが置かれているが、
a2enmod/a2dismod を使って使用/不使用が簡単に行える。
また sites-available に自前で VirtualHost 設定を入れておくと
a2ensite XXX や a2dissite XXX のようにして設定を追加/削除できる。
実は mods-available/ には mods-enabled/ にあるモジュールからの
シンボリックリンク(Syml)が張られているだけなので、リンクを張る/消すだけでも
モジュールの使用/不使用の制御は可能である。
もともと /etc/apach2/site-available/には "default" なる設定ファイルが
ある。
- # vi /etc/apache2/site-available/default
によって以下の点に変更を加えた。
- L.3
"ServerAdmin" には自分のサイトの webmaster宛のメールアドレスを書く。
- L.5
"DocumentRoot" は今回、デフォルトの /var/www ではなく、/var/www/html にした。
- L.10
2.の変更により、"" も /var/www から /var/www/html に変更する。
- L.ll
"Options" から Indexes を削除する。
- L.17
"RedirectMatch" をコメントアウトする。
- L.35
"ServerSignature ON" をコメントアウトする。
以上の設定変更を施した後、":wq" で設定保存。
apache2 のホームディレクトリを作ったり、ユーザ管理をしたりする。
- ホームディレクトリにした /var/www/html を掘る
# mkdir /var/www/html
# chown www-date.www-date /var/www/html
- # /etc/init.d/apache2 restart
- /var/www/html に操作権限を与える。
# usermod -G www-date hjk
# chmod 2775 /var/www/html
(~/.bashrc に "umask 002" を書き加える。
今後の追加ユーザに /var/www/html の書き込み権限を与えたいときには
/etc/skel の "umask" を 002 に変えておく)
でこれも終わり。
php4を設定する際にも、まず初めに行うのは、
/etc/apache2/apache2.conf の設定である。
- # vi /etc/apache2/apache2.conf
変更する箇所を挙げると…
- L.334
"AddType application/x-httpd-php" に .php を追加
- L.335
"AddType application/x-httpd-php-source" に .phps を追加
続いて、/etc/php4/apache/ にある php.ini に変更を加える。
- # vi /etc/php4/apache/php.ini
変更箇所は以下の通り。
- L.999
";mbstring.language = japanese" のコメントを";"を外す
- L.1004
";mbstring.internal_encoding = EUC-JP" のコメントを";"を外す
- L.1007
";mbstring.http_input = auto" のコメントを";"を外す
- L.1011
";mbstring.http_output = SJIS" のコメントを";"を外す
- L.1022
";mbstring.detect_order = auto" のコメントを";"を外す
- L.1026
";mbstring.substitute_character = none" のコメントを";"を外す
- L.1018
";mbstring.encoding_translation = Off" のコメントを";"を外し、Off を On に変更する。
- L.400
"default_charset" を iso-8859-1 から Shift-JIS に変更。
- L.94
"output_buffering" を Off から On に変更。
- L.106
"output_handler = " = の後に mb_output_handler と記入
- L.382
"magic_quotes_gpc" を Off から On に変更。
これで設定は終了だが、テストではうまく稼働しない。
どうやら、debian パッケージのなかの、"libapache2-mod-php4" がないことが原因らしい。
よってこれを最後に入れてやる。
- # aptitude install libapache2-mod-php4
この際、自動的に "apache2-mpm-worker" というパッケージが削除されるようだ。
ここまできたら、apache2 を再起動する。
- # /etc/init.d/apache2 restart
最後に php がきちんと稼働したか確認をとる。
手順は次の通りである。
- $ touch /var/www/html/phpinfo.php
- $ vi /var/www/html/phpinfo.php で phpinfo(); とだけ書いた .php ファイルを置く
- http://ローカルアドレス(プライベートアドレス)/phpinfo.php
を叩いてみて、phpのインフォメーションがでれば、OK。