17 January 2008

Apache初期設定 (SSL無し) on Fedora 8

Fedora 8 サーバで Apache httpd サーバを初期設定したときのメモ

Apache用グループ、ユーザの作成、パスワードの作成


[root@localhost ~]# groupadd www_group ← グループの作成

[root@localhost ~]# useradd -g www_group www_user ← ユーザの作成

[root@localhost ~]# passwd www_user

作成したユーザがシェル ログインできないよう設定する
(シェルを/sbin/nologin に変更する)

/etc/passwd

www_user:x:510:510::/home/www_user:/sbin/nologin

PHP、PHPマルチバイトサポートモジュールのインストール


[root@localhost ~]# yum install php php-mbstring

httpd.conf の設定変更 (実は、何もしなくてもhtmlファイルくらいなら表示できている)

/etc/httpd/conf/httpd.conf

#KeepAlive Off
KeepAlive On ← セッション保持の有効化

#User apache
#Group apache
User www-user ← Apache実行を専用ユーザ・グループへ
Group www-group

<Directory "/var/www/html">

# Options Indexes FollowSymLinks
Options Includes ExecCGI FollowSymLinks ← SSIとCGIの実行許可、ディレクトリ一覧表示の禁止

# AllowOverride None
AllowOverride All ← .htaccess有効化

</Directory>

DirectoryIndex index.html index.html.var index.shtml index.php ← デフォルトで読み込むファイル名を追加

#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" ← 使わなければコメントアウト

#AddDefaultCharset UTF-8 ← 文字コードは文書中でそれぞれ指定するから、コメントアウト

#ServerSignature On
ServerSignature Off ← サーバのバージョンなど、詳細表示OFF

AddHandler cgi-script .cgi .pl ← コメントアウトをはずして有効化

サーバ起動時に、httpデーモンが自動で起動するように設定


[root@localhost ~]# chkconfig httpd on

[root@localhost ~]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off

html格納フォルダの権限変更


[root@localhost ~]# cd /var/www

[root@localhost www]# chown www_user.www_group html

権限変更後のフォルダ状況


[root@localhost www]# ll
合計 158
drwxr-xr-x 2 root root 4096 2007-09-18 16:57 cgi-bin
drwxr-xr-x 3 root root 4096 2008-01-14 22:04 error
drwxr-xr-x 7 www_user www_group 4096 2008-01-16 23:46 html
drwxr-xr-x 3 root root 4096 2008-01-17 21:25 icons
drwxr-xr-x 2 root root 4096 2008-01-14 19:20 mrtg

cgi, phpで書き込みを行うフォルダの権限設定は、707。(Apacheがスクリプトを実行する時は nobodyとなるため)


[root@localhost html]# ll

drwx---rwx 3 www_user www_group 4096 2008-01-17 22:44 test-script

ルートディレクトリにinde.htmlが無いとき、404エラーではなくデフォルトで表示されるApache宣伝ページを無効化する。

/etc/httpd/conf.d/welcome.conf

#<LocationMatch "^/+$">
# Options -Indexes
# ErrorDocument 403 /error/noindex.html
#</LocationMatch>

← 全てコメントアウトするか、ファイル自体を消去する