apache2 の設定あれこれ
http://www.paraches.com/ にアクセスすると http://www.paraches.com/apache2-default/ に飛ばされるけど、これはどこでこんな設定にされているのか?
場所は /etc/apache2/sites-available/default ファイル。ここにあれこれ設定が定義されてるらしい。
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place RedirectMatch ^/$ /apache2-default/ </Directory>
なるほど、RedirectMatch なんちゃらってのがやってるのね。これをコメントにしちゃえば飛ばされる事はないと。
さて、次は index.html が無いフォルダはフォルダを指定するとファイルのリストが見れちゃう。これ、まずいんでない? これは最初の行の Options にある Indexes を消せば良い。インデックスを消すってことね。
で、エラーなんかのページのフッタに apache のバージョンや OS の情報なんかが表示されるけど、あれも微妙にセキュリティ的に悪いような気がする。というわけで、表示させなくしよう。これも /etc/apache2/sites-available/default ファイル。
ServerSignature On
ここで ServerSignature Off にすれば良い。
CGI 関係は特にあれこれしなくても最初の設定で大丈夫。とくに /etc/apache2/sites-available/default ファイルをいぢる必要なし。
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory>
/usr/lib/cgi-bin/ に入れておけば http://www.paraches.com/cgi-bin/ でアクセスできる。でも、Order allow, deby や Allow from allって何か考えないといけないのか? とにかく何でも OK どんと来い!って状態な感じだ。