2005年08月22日

Apache2覚え書き

http://ondes-martenot.info/blog/archives/cat_10.php


Vine Linux 3.0にはVine PlusにApache2が含まれています。
Vine Plusということは、もちろんaptで簡単にインストールできるので、試しにインストールしてみました。
VineではApache2とApache1.xは全く別物としてインストールされますので、Apache2インストール後に問題があればApache1.xにすぐに戻すことができます。

インストールは前述したように

#apt-get install apache2

です。
さらに、phpを使うのなら、インストールしているphpのバージョンにより以下のモジュールパッケージもインストールします。

php4用

#apt-get install php-apache2


php5用

#apt-get install php5-apache2

その他、apache1.x用とapache2用では別々のモジュールパッケージがあるものもありますので、必要に応じてaptでインストールします。

aptでインストールした場合のサーバールートは
/etc/apache2
ですので、このディレクトリにapache2用のhttpd.confも入っています。
このhttpd.confをapache1.x用と同じように書き換えればそのまま起動すると思いきや、実はapache2のデフォルトの動作モードにより、mod_phpをインストールしていると以下のエラーが出て起動に失敗します。

Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP. Pre-configuration failed

これを回避するためには以下のようにします。

#del /etc/alternatives/apache2
#ln -s /usr/sbin/apache2.prefork* /etc/alternatives/apache2

「/etc/alternatives/apache2」のシンボリックリンクのリンク元を「/usr/sbin/apache2.worker*」から「/usr/sbin/apache2.prefork*」へ変更するわけです。(情報元:vine-users ML)

これでapache2の起動自体は可能になります。

ちなみに手動での起動は、
#/etc/rc.d/init.d/apache2 start
です。
aptでインストールした場合にはinit.dにapache2の名前で登録されていますのでntsysvでapache2を選択すれば自動起動できます。

しかし、更に問題があって、Apache2の仕様の問題で、デフォルトの文字設定(ISO-8859-1)では、日本語が文字化けします。(htmlのcharsetは無視される)
これを正常に日本語表示可能にするにはhttpd.confに以下のように追記します。

AddDefaultCharset ISO-8859-1
AddDefaultCharset shift_jis
AddDefaultCharset EUC-JP
AddDefaultCharset none


(情報元:ITmadia エンタープライズ: Linux Tips)

以上で、Apache2が正常に起動します。


comments

comment form

(Togeさんの日々色々 にはじめてコメントされる場合、不適切なコメントを防止するため、掲載前に管理者が内容を確認しています。適切なコメントと判断した場合コメントは直ちに表示されますので、再度コメントを投稿する必要はありません。)

comment form