Archive for the 'Webサーバ(Apache2)' Category

Apacheの自動起動

Posted by: admin at 11 月 8th, 2008

サーバ起動・再起動と同時にApacheを自動的に起動させる設定です。
以前設定したサーバでは以下のようにしていました。
# cd /usr/local/etc/rc.d
# cp /usr/local/apache2/bin/apachectl /usr/local/etc/rc.d/apache.sh
# chmod 0755 /usr/local/etc/rc.d/apache.sh
ですが、apachectl startで起動するので最近では以下のようにしています。
/etc/rc.local
# Start Apache
/usr/local/apache2/bin/apachectl start
apachectl はバージョンやインストール方法によってパスが異なりますので分らない場合には以下の方法で調べます。
# which apachectl

METAタグでcharsetを指定しても文字化けしてしまう

Posted by: admin at 11 月 5th, 2008

少し前のバージョンのApacheではデフォルトで AddDefaultCharsetディレクティブに「ISO-8859-1(ラテン系欧州語、フランス語、ドイツ語)」が指定されています。
Apache2.2以降は、AddDefaultCharsetディレクティブのデフォルト設定はされていません。
httpd.conf の修正を行います。
httpd.conf は通常、下記の場所にあります。
/usr/local/apache2/conf
または
/usr/local/etc/apache2

httpd.conf
AddDefaultCharset off
ただし、この場合は全てのページに下記のようなcharsetを指定しておく必要があります。
<META http-equiv=Content-Type content="text/html; charset=Shift_JIS">

全てのコンテンツが同じ文字コード(charset)の場合には、下記のような指定もできます。
httpd.conf
AddDefaultCharset EUC-JP

修正が終わりましたら、Apacheを再起動します。
# /usr/local/apache2/bin/apachectl restart
apachectl はバージョンやインストール方法によってパスが異なりますので分らない場合には以下の方法で調べます。
# which apachectl

ディレクトリの内容を表示させない

Posted by: admin at 11 月 5th, 2008

ブラウザのアドレス欄にディレクトリ名までを入力した場合、index.html / index.php / index.cgi 等が見つからない場合に、ファイル一覧が表示されてしまうのを防ぐ方法。
Google等で「index of」で検索をすれば、どのようなものかお分りになると思います。
httpd.conf の修正を行います。
httpd.conf は通常、下記の場所にあります。
/usr/local/apache2/conf
または
/usr/local/etc/apache2

httpd.conf
Options Indexes FollowSymLinks
↓ Indexes を削除
Options FollowSymLinks

修正が終わりましたら、Apacheを再起動します。
# /usr/local/apache2/bin/apachectl restart
apachectl はバージョンやインストール方法によってパスが異なりますので分らない場合には以下の方法で調べます。
# which apachectl

CGIを使うための設定

Posted by: admin at 11 月 5th, 2008

httpd.conf の修正を行います。
httpd.conf は通常、下記の場所にあります。
/usr/local/apache2/conf
または
/usr/local/etc/apache2

行頭のコメントアウト(#)を外す
httpd.conf
AddHandler cgi-script .cgi

Options ディレクティブを変更する
httpd.conf
<Directory />
    Options ExecCGI FollowSymLinks Includes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

URLから「~」(チルダ)を無くす

Posted by: admin at 11 月 5th, 2008

httpd.conf の修正を行います。
httpd.conf は通常、下記の場所にあります。
/usr/local/apache2/conf
または
/usr/local/etc/apache2

httpd.conf
Alias /USERNAME/ "/home/USERNAME/public_html/"
<Directory "/home/USERNAME/public_html">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
Directory ディレクティブ内は例です。必要に応じて変更してください。