本を読みながらおこなっていますがPHPの設定で、httpd.confファイルを編集の部分があり、「設定ファイルに次の設定がない場合には次の1行を追加」とあります
LoadModule php5_module modules/libphp5 .so
初歩的な質問なのかどうかもわかりませんが、この行はどこに入れるものなのでしょうか。助言をおねがいします
別にどこに書いても構いません。
ですがデフォルトの httpd.conf 内を見ると他にも色々なモジュールが LoadModule されている部分があると思いますので、そこに並べることが多いです。
ところでFedora5 のapacheなら、デフォルトの設定内に以下のような設定があると思います。
Include conf.d/*.conf
php の LoadModule 設定などは実際は /etc/httpd/conf.d/php.conf 内に書かれており上記 Include 設定で読み込まれるので、php がパッケージで正常にインストールされていれば、特に自分で設定を変えなくても php は使えるようになっているはずですがいかがでしょうか?
http://httpd.apache.org/docs/2.1/ja/mod/mod_so.html#loadmodule
Apache2 はモジュールのロード順序は気にしなくてもよくなったと記憶しています。
ですからどこに書いても(何かのディレクティブの中でなければ)構わないです。
ですが、httpd.conf に直接書いてしまうと見難くなるので、php 用の設定だけを別にしておいて、これを読み込ませるのをお勧めします。
httpd.conf 中に、
Include conf.d/*.conf
こんな行は無いでしょうか?
(意味は、こちらを。http://httpd.apache.org/docs/2.1/ja/mod/core.html#include )
このディレクトリに、php5.conf という名のファイルを置き、以下のように記述します。
(これはうちのサーバにPHP5 をインストールした時に出来たものです)
# Apache2 module <IfModule !php4_module> LoadModule php5_module modules/libphp5.so AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps DirectoryIndex index.php index.phtml </IfModule> # CGI Action php5script /cgi-bin/php5-cgi AddHandler php5script .php5 DirectoryIndex index.php5
後半はCGIとして動作させる時の為のものですので、CGIとして使わないなら不要です。
<IfModule !php4_module> で始まっていますが、PHP4とゴッチャにならない様にする為ですから、他でPHP4をロードするようにしていなければこのままで問題無いです。
(PHP4 をロードしていないなら、<IfModule !php4_module> と最後の </IfModule> の両方を削除しても同じ事です)
ご質問の LoadModule ... の行以外も書いてありますが、AddType... の行は、PHPとの関連付けをしています。(これがどこかにないとPHPとして機能しません)
それぞれのバージョンが微妙に古い気がしますが、何か訳があるのでしょうね。
できるなら、新しいものをお勧めします。
更にディストリビューションがFedoraである必然性が高くなければ、(初めてのサーバであるなら特に)別のディストリビューションをお勧めします。
Vine, CentOS などFedraに似たものもあります。
皆様ご回答ありがとうございます。(全くの未知のジャングルのなかをさまよっているみたいで、そんな時に大変助かります)しかし、みなさまのお答えを理解するのに、ひとつひとつ調べなければ、理解もできず、返答も、試す作業も追いついていません。とにかく一旦みなさまに返答を書きまして、引き続き作業をおこなってまた書き込みに来ます。
(再度続きを)
Include conf.d/*.confは近いもので
Include conf/mod_jk.confがありましたが、これは本来現在のあとに作業をするもので、それを先にやった際に、加えた一行です
これはアパッチとトムキャットの連携にかんしての作業でおこないました
PerlとPHP4に関しましては、当方で今はふれる余裕がなく、まずいまのエラーを回避してその後に参考にし知識としたくおもいます。詳しく記載をしていただいて大変ありがとうございます。
>それぞれのバージョンが微妙に古い気がしますが、何か訳があるのでしょうね。
このセットで今データ類すべてが揃っているため、文献とこの内容でとにかく最後までやって、構造や流れなどリナックスをふくめ理解したくやっております
ですがたしかに新しいのものセキュリティ部分もありますので、それはたしかにそのようにするようします
>更にディストリビューションがFedoraである必然性が高くなければ、(初めてのサ>ーバであるなら特に)別のディストリビューションをお勧めします。
今はFedoraでやらせていただきますが、初めてのサーバで、上記のようなものなどを入れておこなう場合、何かお勧めがありましたらお教えください。
(Vineは以前の職場で先輩にちらっときいた名前なので好感をもっているのですが、利点もなにもわかりません)
最後になりますが現在これに関連しhttp://q.hatena.ne.jp/1200533955のエラーが回避できません。不躾ではありますが宜しければこちらもご助言いただければ大変たすかります。ずうずうしく失礼ですがお願いいたします
どこでも構いませんが、/etc/httpd/httpd.confには
通常それがコメント化された状態で書いてあるので、
そのコメント記号#をはずすだけでよいのです。
#LoadModule php5_module modules/libphp5 .so
↓
LoadModule php5_module modules/libphp5 .so
phpを自分でコンパイルした場合も、通常はhttpd.confの末尾に
自動的に挿入されているはずです。
皆様ご回答ありがとうございます。(全くの未知のジャングルのなかをさまよっているみたいで、そんな時に大変助かります)しかし、みなさまのお答えを理解するのに、ひとつひとつ調べなければ、理解もできず、返答も、試す作業も追いついていません。とにかく一旦みなさまに返答を書きまして、引き続き作業をおこなってまた書き込みに来ます。
(再度続きを)
>phpを自分でコンパイルした場合も、通常はhttpd.confの末尾に
>自動的に挿入されているはずです。
はい確認したところ、もともとこの記述はありました。ありがとうございます。ですが、LoadModule php5_module modules/libphp5 .soというような形形でしたので、空白を直しました。皆様ありがとうございました。
ですが引き続きhttp://q.hatena.ne.jp/1200533955のエラーは回避できていません。宜しければずうずうしいのですがこちらも助言をいただければ幸いです
皆様ご回答ありがとうございます。(全くの未知のジャングルのなかをさまよっているみたいで、そんな時に大変助かります)しかし、みなさまのお答えを理解するのに、ひとつひとつ調べなければ、理解もできず、返答も、試す作業も追いついていません。とにかく一旦みなさまに返答を書きまして、引き続き作業をおこなってまた書き込みに来ます。
(再度続きを)
>別にどこに書いても構いません。
>ですがデフォルトの httpd.conf 内を見ると他にも色々なモジュールが LoadModu>le されている部分があると思いますので、そこに並べることが多いです。
どこにいれてもいいということで、これでこの件は解決しました。
参考にしているもののとおりやっており、意味をまだ理解していません。
AddTypeに1行とAddCharsetに1行とこのLoadModuleに1行の内容でやっています。
まだ、http://q.hatena.ne.jp/1200533955の質問のように、エラーがでておりPHPの動作を確認できていません。
宜しければ不躾でずうずうしいのですがエラーを回避に関して助言をおねがいします。