snagplaces on @wiki
Apache 2.2.3のインストール
最終更新:
snagplaces
-
view
最終更新日時:2010年04月30日 (金) 13時32分59秒[編集]
はじめに
Apache2.2.3になってから、ある程度の仕様変更があったようで、httpd.confの設定が合っていないのか単純にアップグレードしただけでは動作しなくなります。
ここでは、新版になったApacheの基本的な構築を行います。mod-sslの設定はここでは取り上げません。
ここでは、新版になったApacheの基本的な構築を行います。mod-sslの設定はここでは取り上げません。
インストール
CentOSの基本インストールの状態であれば、Apacheは既にインストール済みなので、関連するパッケージのインストールのみ行います。
PHP関連パッケージ
# yum install php php-mbstring 【依存パッケージ:pcp-cli php-common】
Perl関連パッケージ
# yum install mod_perl perl-DBD-MySQL 【依存パッケージ:perl-DBD perl-BSD-Resource mysql】 # yum --enablerepo=rpmforge install perl-Jcode
MySQL関連パッケージ
# yum install mysql-devel mysql-server 【依存パッケージ:e2fsprogs-devel keyutils-libs-devel krb5-devel libselinux-devel libsepol-devel openssl-devel】
[▲上へ]
ユーザ作成
Webコンテンツ編集用のユーザを作成します。FTPアクセスできれば十分なので、SSHログインはできない設定にしておきます。
# groupadd www # useradd www -g www -s /sbin/nologin # passwd www
HTTPアクセスできるようにパーミッションも変更しておきます。
# chmod 711 /home/www
[▲上へ]
FTPアクセス許可
ユーザ追加直後はFTPアクセスできない設定になっていますので、アクセス許可できるようにしておきます。
# vi /etc/vsftpd/user_list
[▲上へ]
ファイアウォールアクセスの許可
FTP設定したときと同様に、WWW(HTTP)アクセスの許可もしておきます。
# setup ※「カスタマイズ」から「www(HTTP)」にチェックを入れる
[▲上へ]
設定ファイルの編集
# vi /etc/httpd/conf/httpd.conf
【44行目当たり変更】OS名を表示しない
ServerTokens Prod
【200行目あたり追記】phpの認識
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
【252行目あたり変更】連絡用メールアドレス
ServerAdmin メールアドレス
【266行目あたり変更】サーバ名
ServerName ドメイン名:ポート
【321行目あたり変更】CGI、SSIの許可
Options Includes ExecCGI FollowSymLinks
【328行目あたり変更】.htaccessの許可
AllowOverride All
【282行目あたり変更】ルートアクセス時のパス
#DocumentRoot "/home/www/public_html"
DocumentRoot "/var/www/html"
【307行目あたり変更】ルートアクセス時の設定
#<Directory "/home/www/public_html">
<Directory "/var/www/html">
【321行目あたり変更】ルートアクセス時に使用できる機能を設定
Options Includes ExecCGI FollowSymLinks Indexes MultiViews
【356行目あたりコメントアウト】ユーザディレクトリの有効
#UserDir disable
【363行目当たり変更】ユーザディレクトリの基本パス
UserDir /home/*/public_html
【371行目あたり変更】ユーザディレクトリの設定
<Directory /home/*/public_html>
【372行目あたり変更】.htaccessの許可
AllowOverride All
【373行目あたり変更】ユーザディレクトリアクセス時に使用できる機能を設定
Options Includes ExecCGI FollowSymLinks Indexes MultiViews
【382行目あたり変更】
</Directory>
【392行目あたり変更】ディレクトリアクセス時に強制アクセスするファイル名(左から優先)
DirectoryIndex index.htm index.html index.cgi index.php
【486行目あたり変更】長いURIはログに記録しない
LogFormat "%h %l %u %t \"%!414r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
【515行目あたり追記】その他ログに記録させない項目
SetEnvIf Request_URI "default\.ida" no_log
SetEnvIf Request_URI "cmd\.exe" no_log
SetEnvIf Request_URI "root\.exe" no_log
SetEnvIf Request_URI "Admin\.dll" no_log
SetEnvIf Request_URI "NULL\.IDA" no_log
SetEnvIf Remote_Addr 192.168 no_log
SetEnvIf Remote_Addr 127.0.0.1 no_log
【522行目あたり変更】上記以外のログを記録する
CustomLog logs/access_log combined env=!no_log
【532行目あたり変更】Apacheのバージョンを表示しない
ServerSignature Off
【550行目あたり変更】アイコンディレクトリ一覧を表示しない
Options MultiViews
【572行目あたりコメントアウト】CGI専用実行アドレスは使用しない
#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
【658・659行目あたりコメントアウト】
#ReadmeName README.html
#HeaderName HEADER.html
【665行目あたりコメントアウト】
#IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
【739行目あたり変更】日本語を優先
LanguagePriority ja en ca cs da de el eo es et fr he hr it ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
【755行目あたりコメントアウト】
#AddDefaultCharset UTF-8
【786行目あたり変更】実行CGIに.plを追加
AddHandler cgi-script .cgi .pl
【807行目あたり変更】SSIを実行できる拡張子を指定
AddOutputFilter INCLUDES .shtml .htm .html .cgi .php
適当なHTMLやCGIを作成して動作確認してみてください。
[▲上へ]
サービスの起動
# service httpd start
自動起動設定
# chkconfig httpd on
[▲上へ]