Linux で自宅サーバ [ Home Server Techncial ]

>>トップページに戻る

BBS 過去ログ No.0008に戻る

タイトル: mod_phpについての質問です。
記事No: 2301
投稿日: 2004/06/22(Tue) 13:34
投稿者: ms
LINUX初心者のmsです。
このHPを参考にして、何とかLinux+Apacheの稼働に成功しました。しかし、PHPインストールでつまづきました。

過去ログ
http://www.miloweb.net/pastbbs/0007/1996.html#1998
を参考に、PHPのインストールを試みましたが、mod_phpのインストール方法が分かりません(というか、モジュールのインストールが分かりません)。

Webmin上から、システム>ソフトウェアパッケージ>新規パッケージのインストールを試みましたが、最もバージョンの近い物を選んでインストールしても以下の様なエラーが出ます。

error: failed dependencies:
php = 4.2.3-1.0.22 is needed by mod_php-4.2.3-1.0.22
libmysqlclient.so.10 is needed by mod_php-4.2.3-1.0.22

現状、apache-1.3.27-0vl6 と php-4.2.3-0vl5 をインストールしています。何分、素人ですのでどなたか教えて頂ければ幸いです。よろしくお願い致します。

タイトル: Webminは知りませんが
記事No: 2302
投稿日: 2004/06/22(Tue) 15:46
投稿者: sg URL: http://tsuttayo.sytes.net/
Xのコンソールからなら
http://tsuttayo.sytes.net/php/install/rpm.html
私のサイトで恐縮ですが、上記でできませんかねぇ?

タイトル: Re: Webminは知りませんが
記事No: 2304
投稿日: 2004/06/22(Tue) 18:47
投稿者: ms
> Xのコンソールからなら
> http://tsuttayo.sytes.net/php/install/rpm.html
> 私のサイトで恐縮ですが、上記でできませんかねぇ?

早速のご返事ありがとう御座います。
参考にさせて頂きました。しかし、mod_phpはインストール出来ませんでした。sgさんのHPを参考にパッケージphp-mysql・php-pgsql・php-odbc・php-devel・php-imap・php-ldap・php-modeまではインストール完了いたしました。ありがとう御座います。しかし、肝心の

# apt-get install mod_php
とすると、

パッケージmod_phpはデータベースには存在しますが、パッケージがありません。
This typically means that the package was mentioned in dependency and never uploaded,has been obsoleted or is not available with the contents
のsources.list
以下のパッケージで置き換えられます:
 php
E: Package mod_php has no installation candidate

となりましたので、以下の様に入力しましたが

# apt-get install php
    :
*php は既に最新バージョンがインストールされています
    :

となってしまいます。
申し訳御座いませんが、もう少しご教授頂ければ幸いです(悲)。

タイトル: じゃあ安心してください、たぶんインストール済みです
記事No: 2305
投稿日: 2004/06/22(Tue) 19:18
投稿者: sg URL: http://tsuttayo.sytes.net/
> # apt-get install php
>     :
> *php は既に最新バージョンがインストールされています

これなら、たぶん済んでいます。

# rpm -qa | grep php

これで表示されると思います。表示されたらインストール済みです。
また、インストール済みならば /etc/php.ini というファイルがあると思います。

あとはこれを日本語対応にしておきましょう。
http://tsuttayo.sytes.net/php/char_trn/ini_sam/ini_sample.php?os=linux&int=euc&out=sjis
php.iniを上記の設定にすることと、
http://tsuttayo.sytes.net/php/install/rpm.html
上記のページのように
error_reporting = E_ALL & ~E_NOTICE
このコメントをはずしてください。

これで思う存分、PHPできますよ (^_^)

タイトル: 追加
記事No: 2306
投稿日: 2004/06/22(Tue) 20:01
投稿者: sg URL: http://tsuttayo.sytes.net/
それと、php.iniの設定を変えたらApacheを再起動する必要があります。

# /etc/init.d/httpd restart

これをやってください。

タイトル: Re: 追加
記事No: 2311
投稿日: 2004/06/23(Wed) 03:19
投稿者: ms
> それと、php.iniの設定を変えたらApacheを再起動する必要があります。
>
> # /etc/init.d/httpd restart
>

sgさん本当に度々申し訳ありません。とても助かってます。
sgさんに教えて頂いた通り

# rpm -qa | grep php

を、実行しました。
php-debel-4.2.3-0lv5
php-mysql-4.2.3-0lv5
php-pgsql-4.2.3-0lv5
php-mode-1.0.2-0vl1
php-odbc-4.2.3-0lv5
php-ldap-4.2.3-0lv5
php-4.2.3-0lv5
と、表示されました。

phpと他のモジュールはインストールされている様ですが、mod_phpは、表示されませんでした。ここで、表示された方が良いのか、表示されなくて良いものなのか分からない為、sgさんに習った手順を更に進めました。php.iniの設定も終了し、Apacheの再起動も何の問題も無く終了致しました。

しかし、mod_phpと表示されない事がどうも気になります。
と言うのも、sgさんに習う前、下の様な過程がありました。

1:Apacheインストールの際、以下のBBSで取り上げられている問題が発生し、httpd.confのmod_php関連の部分をコメントアウトしてApacheを起動していた。

http://www.miloweb.net/pastbbs/0006/1765.html#1765

2:このHPを参考にしてPHPをインストールする中でApacheの設定としてHPに以下の様に掲載されておりました。

http://www.miloweb.net/php.html#2

3:PHPをインストールし終わり、Apacheのhttpd.confでコメントアウトしていた部分のコメントを外し、PHPモジュールを有効にしました所、1で発生した問題が、またも発生しました。そのエラーの理由が、mod_phpがインストールされていない事によるものだったのです。

長くなってしまいましたが、sgさんが教えて下さった方法でphp表示が可能か今から実験してみたいと思います。追記でこの結果も報告させていただきます。

タイトル: 結果
記事No: 2312
投稿日: 2004/06/23(Wed) 04:41
投稿者: ms
phpinfo.phpファイルに、

<?php
phpinfo();
?>

と記述し、ホームディレクトリに入れ、
http://localhost/phpinfo.php
とブラウザで入力したところ、

<?php
phpinfo();
?>

と表示されました。…(涙)…どうすれば…?

以上報告でした。

タイトル: Re: 結果
記事No: 2314
投稿日: 2004/06/23(Wed) 05:37
投稿者: sg URL: http://tsuttayo.sytes.net/
これはhttpd.confの記述ミスではないでしょうか?
httpd.confをご自身でコメントにしたところがありませんか?
php関係の部分です。
そのコメントアウトした部分を元に戻せばうまくいくと思います。

タイトル: mod_php
記事No: 2313
投稿日: 2004/06/23(Wed) 05:14
投稿者: sg URL: http://tsuttayo.sytes.net/
> # rpm -qa | grep php
>
> を、実行しました。
> php-debel-4.2.3-0lv5
> php-mysql-4.2.3-0lv5
> php-pgsql-4.2.3-0lv5
> php-mode-1.0.2-0vl1
> php-odbc-4.2.3-0lv5
> php-ldap-4.2.3-0lv5
> php-4.2.3-0lv5
> と、表示されました。

mod_phpはかなり古いPHP2用のものだと思います。
したがって、これはインストールする必要はないのです。


> 1:Apacheインストールの際、以下のBBSで取り上げられている問題が発生し、httpd.confのmod_php関連の部分をコメントアウトしてApacheを起動していた。
>
> http://www.miloweb.net/pastbbs/0006/1765.html#1765

Webminでの話ですねぇ?

でも、Vine標準のhttpd.confは何も変更しなくてもPHP自体は動くはずです。

今回、msさんのことを参考にして
http://tsuttayo.sytes.net/php/install/rpm.html
上記を少し修正してみました。

> 2:このHPを参考にしてPHPをインストールする中でApacheの設定としてHPに以下の様に掲載されておりました。
>
> http://www.miloweb.net/php.html#2


httpd.confは、現在、私の自宅ではまったく同じ環境がないのですが、上記に書かれている内容であっていると思います。
少なくとも私の自宅はhttpd.confが上記とまったく同じです。
そして、PHPは問題なく動いています。
(私のサイトはPHPのかたまりみたいなサイトです)

でも、やはりWebminだと私もエラーになりますねぇ (^_^;

それで調べてみました。
Apache起動スクリプトを見ると
moduledir=/usr/lib/apache
/usr/bin/find ${moduledir} -type f -perm -0100 -name "*.so" | awk '{\
gsub(".*/","");\
gsub("^mod_","");\
gsub("^lib","");\
gsub("\.so$","");\
print "-DHAVE_" toupper($0)}'
という部分があって-DHAVE_PHP4のようにパラメータを渡しているようです。
つまり、インストールされたモジュールを起動時にチェックして、httpd.confでモジュールの読み込みをしているわけです。
ですから、mod_php自体はApacheには読み込まれません。PHP2をインストールしていないのですから。
しかし、不思議なことにWebminで見るとHAVE_PHPが定義されています。

そこで、Webmin固有の問題なのは明らかなので、それらしきものを探したらありました。

/etc/webmin/apache/config

ここに
defines=HAVE_PERL HAVE_PHP HAVE_PHP3 HAVE_PHP4 HAVE_DAV HAVE_ROAMING HAVE_SSL SSL
という行があります。
つまり、Webminではインストールされたモジュールの自動認識をしていないのかもしれません。
とにかく、この行を
#defines=HAVE_PERL HAVE_PHP HAVE_PHP3 HAVE_PHP4 HAVE_DAV HAVE_ROAMING HAVE_SSL SSL
このようにコメントにすると、正常になるようです。

タイトル: PHP起動いたしました!!
記事No: 2315
投稿日: 2004/06/23(Wed) 09:13
投稿者: ms
> とにかく、この行を
> #defines=HAVE_PERL HAVE_PHP HAVE_PHP3 HAVE_PHP4 HAVE_DAV HAVE_ROAMING HAVE_SSL SSL
> このようにコメントにすると、正常になるようです。

お返事有難う御座います。phpinfo.php正常に起動しました。本当に有難う御座います。感激です。

BBS過去ログでapacheの設定http://www.miloweb.net/pastbbs/0006/1765.html#1765を参考にされていた方で、同様のところにつまづいている方もいらっしゃると思いますので私が修正した部分を記載させて頂きます。

@過去ログを参考にしてコメントをつけておいた部分全てのコメントを外しました。(私の場合、httpd.conf251行以下数行をデフォルトに戻した形になります。)

Asgさんに習った様に/etc/webmin/apache/configを修正しました。

Bapacheを再起動致しました。
# /etc/init.d/httpd restart

Chttp://localhost/phpinfo.phpで正常に表示されました。
------------------------------(以上)--------

sgさん本当に有難う御座いました。本当に助かりました。
また、sgさんのHP

http://tsuttayo.sytes.net/

を、もっと活用させて頂き勉強させて頂きます。また私のHPが完成した際にも報告に参ります。有難う御座いました。

▲ページの最上部に戻る

Copyright© Home Server Technical. All Right Reserved.
webmaster@miloweb.net