Apacheの設定内容の移行

Apache1.3 から Apache2.0 へ移行する際、設定内容を引き継ぐため、必要な内容の抽出を行ないます。基本的に、ここは一般的な内容よりも、備忘録としての意味合いが強いです。

モジュールの確認

静的モジュール

Apache は、モジュールを追加することで、さまざまな機能拡張ができるようになっています。現在組み込まれているモジュールは、-l で確認できます。

[root@pokota root]# httpd -l
Compiled-in modules:
  http_core.c
  mod_so.c
suexec: disabled; invalid wrapper /usr/sbin/suexec

mod_so がある場合、動的モジュールがサポートされています。詳しくは次節を参照してください。

動的モジュール

httpd.conf をみて、Load_Module されているモジュールを確認します。うちでは、後から追加したモジュールとして、下記のものがありました。厳密に言うと、ディストリビューションで既に組み込まれていたものがあるので、明示的に自分で追加していないものもあります。

その他の動的モジュールについても、一応 Load_Module の一覧を掲載しておきます。

LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule env_module         modules/mod_env.so
LoadModule config_log_module  modules/mod_log_config.so
LoadModule agent_log_module   modules/mod_log_agent.so
LoadModule referer_log_module modules/mod_log_referer.so
#LoadModule mime_magic_module  modules/mod_mime_magic.so
LoadModule mime_module        modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule status_module      modules/mod_status.so
LoadModule info_module        modules/mod_info.so
LoadModule includes_module    modules/mod_include.so
LoadModule autoindex_module   modules/mod_autoindex.so
LoadModule dir_module         modules/mod_dir.so
LoadModule cgi_module         modules/mod_cgi.so
LoadModule asis_module        modules/mod_asis.so
LoadModule imap_module        modules/mod_imap.so
LoadModule action_module      modules/mod_actions.so
#LoadModule speling_module     modules/mod_speling.so
LoadModule userdir_module     modules/mod_userdir.so
LoadModule alias_module       modules/mod_alias.so
LoadModule rewrite_module     modules/mod_rewrite.so
LoadModule access_module      modules/mod_access.so
LoadModule auth_module        modules/mod_auth.so
LoadModule anon_auth_module   modules/mod_auth_anon.so
LoadModule db_auth_module     modules/mod_auth_db.so
#LoadModule dbm_auth_module    modules/mod_auth_dbm.so
#LoadModule auth_ldap_module   modules/mod_auth_ldap.so
#LoadModule digest_module      modules/mod_digest.so
#LoadModule proxy_module       modules/libproxy.so
#LoadModule cern_meta_module   modules/mod_cern_meta.so
LoadModule expires_module     modules/mod_expires.so
LoadModule headers_module     modules/mod_headers.so
#LoadModule usertrack_module   modules/mod_usertrack.so
#LoadModule example_module     modules/mod_example.so
#LoadModule unique_id_module   modules/mod_unique_id.so
LoadModule setenvif_module    modules/mod_setenvif.so
#LoadModule bandwidth_module   modules/mod_bandwidth.so
#LoadModule put_module         modules/mod_put.so
#LoadModule throttle_module    modules/mod_throttle.so
#LoadModule define_module      modules/mod_define.so
LoadModule jk2_module         modules/mod_jk2.so
<IfDefine HAVE_PERL>
LoadModule perl_module        modules/libperl.so
</IfDefine>
<IfDefine HAVE_PHP>
LoadModule php_module         modules/mod_php.so
</IfDefine>
<IfDefine HAVE_PHP3>
LoadModule php3_module        modules/libphp3.so
</IfDefine>
<IfDefine HAVE_PHP4>
LoadModule php4_module        modules/libphp4.so
</IfDefine>
<IfDefine HAVE_DAV>
LoadModule dav_module         modules/libdav.so
</IfDefine>
<IfDefine HAVE_ROAMING>
LoadModule roaming_module     modules/mod_roaming.so
</IfDefine>
<IfDefine HAVE_SSL>
LoadModule ssl_module         modules/libssl.so
</IfDefine>

各種設定

基本ですが、httpd.conf 内の各種設定です。

まずはサーバ名の設定です。

ServerName omoshiro-joho.com

ドキュメントルートの設定です。

DocumentRoot /home/httpd

名前変換を行なうように設定します。ここが On になっていないと、IPアドレスの逆引きができずに、問題が起こる可能性があります。

HostnameLookups On

PUT メソッドと DELETE メソッドを使うための設定です。両メソッドは、Firefox のブックマーク同期に使っています。

# For PUT,DELETE Add 2005/03/19
<Directory /home/httpd/hoge/page>
    Script PUT /hoge/put
    Script DELETE /hoge/del
</Directory>

エイリアスの指定を行ないます。これをセキュリティ関係(所定階層のアクセス排除など)に利用している場合は、忘れず設定する必要があります。

ScriptAlias /hoge/cgi-bin/ /home/httpd/hoge/cgi-bin/
Alias /hoge/ /home/httpd/hoge/html/

CGI および SSI の使用を可能にしておきます。

#
# To use CGI scripts:
#
AddHandler cgi-script .cgi

#
# To use server-parsed HTML files
#
AddType text/html .shtml
AddHandler server-parsed .shtml

バーチャルホストの指定を行ないます。

NameVirtualHost *

<VirtualHost *>
ServerName omoshiro-joho.com
ServerAdmin root@localhost
DocumentRoot /home/httpd
</VirtualHost>

<VirtualHost *>
ServerName another-domain.com
ServerAdmin root@localhost
DocumentRoot /home/httpd/hoge
</VirtualHost>

Directory ディレクティブで、トップディレクトリの各属性を決定します。全てのディレクトリで CGI の実行などを許可しています。AllowOverride は All で、必要な場合は全て下位ディレクトリの .htaccess ファイルで対応するようにしています。

Options Includes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all

履歴


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-09-17 (土) 20:01:21