Apache2のインストール (PC-UNIX編)

Apache2のインストールメモです。特にここでは、 WebDAV機能を試すため、WebDAV対応でビルドします。 環境はRed Hat Linux 7.3、httpd-2.0.50です。

  1. Apacheのホームページ からリンクを辿り、httpd-2.0.50.tar.gz をダウンロードします。
  2. 適当なディレクトリで展開し、configure→make→make installです。

    % sh configure --enable-dav --enable-rewrite --enable-so --enable-ssl
    % make
    # make install
    

    davモジュールの他に興味のある、rewriteモジュールも一緒につけてやりました。


Apache2のインストール (Windows編)

Windows XP Home EditionのPCで、Apache 2.0.50とApache 2.2.8を試しました。
またWindows 7 Home PremiumのPCで、Apache 2.2.14を試しました。

  1. まず、古いバージョンのApacheが入っていたら、 コントロールパネル→プログラムの変更と削除を使って、アンインストールする必要があります。
  2. Windows用にはコンパイル済みのバイナリが.msi(Windowsインストーラ)形式で配布されています。 総本山から 「Download」→「binaries」→「win32」と辿り、 apache_2_*_**-win32-x86-no_ssl.msiをダウンロードします。
  3. ダブルクリックするなどして起動すると一本道でインストールできます。 インストール位置は、ルートを例えば C:\Wintools\Apacheとすると、 実際のApache HTTP Serverのbinディレクトリは バージョン2.2の場合 C:\Wintools\Apache\bin、 バージョン2.0の場合 C:\Wintools\Apache\Apache2\bin のようになります。 インストールが完了すると、そのままタスクバーに常駐します。(ApacheMonitor.exe) このApache Monitorを使うと、「サービス」パネルを開かなくても、タスクバーで起動・停止・再起動ができます。
  4. Webブラウザでhttp://localhost/ (インストール時にポートを80以外にした場合は http://localhost:{ポート番号}/) にアクセスしてみます。
    バージョン2.2の場合「It Works!」という文字だけのごくシンプルな画面が表示されます。
    バージョン2.0の場合は「あなたの予想に反して、このページが見えているでしょうか?」 という画面が表示されます。
なお、ApacheをWindowsサービスに登録したり、解除したりするには、 Apache.exeに-kオプションをつけて実行します。

Apache.exe -k install
Apache.exe -k uninstall

WindowsXPだとブロックされるので、ブロックを解除します。


基本的な設定

DocumentRootで文書のルートディレクトリを変更できます。 ここを変更すると、合わせて「Directory {ルート}」の部分のパスも変えてやらないと、 http://localhost/ にアクセスしたときに「Forbidden」などと表示されてしまいます。


文字化け解決のためのhttpd.confの設定

日本語を使った文書を配信したときに、ブラウザが文字セットを「ISO-8859-1」 だと勝手に判断して文字化けしてしまう (明示的にシフトJISや日本語EUCに変更すると、正しく表示できる)場合は、 httpd.confのAddDefaultCharsetを変更します。

AddDefaultCharset Shift_JIS
#AddDefaultCharset EUC-JP
#AddDefaultCharset ISO-8859-1

または、最初から書かれている「AddDefaultCharset ISO-8859-1」をコメントにしてしまうだけ、 でも解決できるようです。


セキュリティに関するhttpd.confの設定

ディレクトリリスト表示の禁止
URLでディレクトリに直接アクセスされたとき、 デフォルトではディレクトリ内のファイルがリスト表示されますが、 これをしないようにするには、オプションの「Indexes」を削ります。

<Directory "/usr/local/apache2/htdocs">
    #Options Indexes FollowSymLinks MultiViews
    Options FollowSymLinks MultiViews
</Directory>

特定のホスト・ネットワークからのみアクセスを許可する

<Directory "/usr/local/apache2/htdocs">
  #Order allow,deny
  #Allow from all
  Order deny,allow
  Deny from all
  Allow from 192.168.1.251 192.168.1.252 127.0.0.1
</Directory>

または「192.168.」のように上位ネットのみでも指定できます。

HTTPレスポンスにOSやApacheの情報を含めないようにする

ServerTokens Prod

サーバが出力するエラーページ、FTPリストページなどにApacheのバージョンを表示しない

ServerSignature Off


その他のTips

Apache本体と一緒にコンパイルされているモジュールの一覧を表示する
「httpd -l」でリストできます。

Open Source Web Architecture Top

(first uploaded 2002/08/11 last updated 2009/12/16, URANO398)

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル