続き。
Apache2.2をソースからコンパイルすることに。
# yum remove httpd* ============================================================================= Package Arch Version Repository Size ============================================================================= Removing: httpd i386 2.0.63-2.el4s1.centos.2 installed 2.5 M Removing for dependencies: httpd-devel i386 2.0.63-2.el4s1.centos.2 installed 476 k httpd-manual i386 2.0.63-2.el4s1.centos.2 installed 7.8 M mod_auth_mysql i386 1:2.6.1-2.2 installed 27 k mod_auth_pgsql i386 2.0.3-2.el4s1.2 installed 53 k mod_authz_ldap i386 0.26-2.1 installed 195 k mod_perl i386 1.99_16-4.centos4 installed 3.7 M mod_python i386 3.1.3-5.1 installed 1.8 M mod_ssl i386 1:2.0.63-2.el4s1.centos.2 installed 165 k php i386 5.1.6-3.el4s1.10 installed 2.7 M php-pear noarch 1:1.4.11-1.el4s1.1 installed 1.8 M phpmyadmin noarch 2.11.9.3-1.el5.rf installed 13 M system-config-httpd noarch 5:1.3.1-1 installed 1.6 M webalizer i386 2.01_10-25 installed 263 k
ええい、やっちまえ!・・・で、さっくり削除。
# wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.11.tar.gz # tar zxvf httpd-2.2.11.tar.gz # cd httpd-2.2.11 # ./configure --prefix=/usr/local/httpd \ --with-ldap --enable-mods-shared="all ssl ldap cache proxy authn_alias mem_cache file_cache authnz_ldap charset_lite dav_lock disk_cache" ... # make ... # checkinstall ... ********************************************************************** Done. The new package has been saved to /usr/src/redhat/RPMS/i386/httpd-2.2.11-1.i386.rpm You can install it in your system anytime using: rpm -i httpd-2.2.11-1.i386.rpm **********************************************************************
おし、いけた。
# rpm -i --force /usr/src/redhat/RPMS/i386/httpd-2.2.11-1.i386.rpm # cd /usr/local/httpd/ # ls bin cgi-bin error httpd_install.txt include logs manual build conf htdocs icons lib man modules # ls modules/ httpd.exp mod_authz_owner.so mod_ext_filter.so mod_proxy_ajp.so mod_actions.so mod_authz_user.so mod_file_cache.so mod_proxy_balancer.so mod_alias.so mod_autoindex.so mod_filter.so mod_proxy_connect.so mod_asis.so mod_cache.so mod_headers.so mod_proxy_ftp.so mod_auth_basic.so mod_cern_meta.so mod_ident.so mod_proxy_http.so mod_auth_digest.so mod_cgi.so mod_imagemap.so mod_rewrite.so mod_authn_alias.so mod_charset_lite.so mod_include.so mod_setenvif.so mod_authn_anon.so mod_dav.so mod_info.so mod_speling.so mod_authn_dbd.so mod_dav_fs.so mod_ldap.so mod_ssl.so mod_authn_dbm.so mod_dav_lock.so mod_log_config.so mod_status.so mod_authn_default.so mod_dbd.so mod_log_forensic.so mod_substitute.so mod_authn_file.so mod_deflate.so mod_logio.so mod_unique_id.so mod_authnz_ldap.so mod_dir.so mod_mem_cache.so mod_userdir.so mod_authz_dbm.so mod_disk_cache.so mod_mime.so mod_usertrack.so mod_authz_default.so mod_dumpio.so mod_mime_magic.so mod_version.so mod_authz_groupfile.so mod_env.so mod_negotiation.so mod_vhost_alias.so mod_authz_host.so mod_expires.so mod_proxy.so
ステキデス。
次にhttpd.confの設定。
2.0系はhttpd.confにUserDirの設定があったけど、2.2系はconf/extra/httpd-userdir.conf に移動した(というか、ファイルが分割された)。
AliasMatch ^/([^/]+)(.*) /home/$1/public_html/$2 <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews FollowSymLinks ExecCGI <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> DirectorySlash On </Directory>
ユーザディレクトリの設定を有効にするには、conf/httpd.confの
# User home directories # Include conf/extra/httpd-userdir.conf
のコメントを外して有効にする必要あり。
さて実行。
# cd bin # ./apachectl start Invalid command "Order", perhaps misspelled or defined by a module not included in the server configuration
そういえばモジュールの読み込み設定なんもやってない。
こっちもとりあえず全部(?)入り。
ちなみにmod_accessは廃止されて、mod_authz_host.soになったんだそうだ。
LoadModule authz_host_module modules/mod_authz_host.so LoadModule auth_dbm_module modules/mod_auth_dbm.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule ldap_module modules/mod_ldap.so LoadModule include_module modules/mod_include.so LoadModule log_config_module modules/mod_log_config.so LoadModule env_module modules/mod_env.so LoadModule mime_magic_module modules/mod_mime_magic.so LoadModule cern_meta_module modules/mod_cern_meta.so LoadModule expires_module modules/mod_expires.so LoadModule deflate_module modules/mod_deflate.so LoadModule headers_module modules/mod_headers.so LoadModule usertrack_module modules/mod_usertrack.so LoadModule setenvif_module modules/mod_setenvif.so LoadModule mime_module modules/mod_mime.so LoadModule dav_module modules/mod_dav.so LoadModule status_module modules/mod_status.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule asis_module modules/mod_asis.so LoadModule info_module modules/mod_info.so LoadModule dav_fs_module modules/mod_dav_fs.so LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule dir_module modules/mod_dir.so LoadModule actions_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 proxy_module modules/mod_proxy.so LoadModule proxy_ftp_module modules/mod_proxy_ftp.so LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_connect_module modules/mod_proxy_connect.so LoadModule cache_module modules/mod_cache.so LoadModule disk_cache_module modules/mod_disk_cache.so LoadModule file_cache_module modules/mod_file_cache.so LoadModule mem_cache_module modules/mod_mem_cache.so LoadModule cgi_module modules/mod_cgi.so
これでいいはず・・・!
# bin/apachectl start
動いた動いた。
続きは次回。