PHP myADMINインストール時のエラー

このQ&Aのポイント
  • PHP myADMINをインストールする際のエラーと対処法
  • エラーメッセージ「mysql 拡張がありません。」の解決方法
  • CentOS 5.7でのPHP myADMINインストール時のトラブルシューティング
回答を見る
  • ベストアンサー

PHP myADMINインストール時のエラー

PHP myADMINをインストールしようとしていますが、 「mysql 拡張がありません。PHP の設定をチェックしてみてください。」 とエラーが出て先へ進めません。 設定は下記で設定しました。 yum -y install php-common yum -y install php-mbstring yum -y install php-mcrypt yum -y install php-mysql config.inc.php $cfg['blowfish_secret'] = '適当な文字'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */とし、これをアップした後、660にパーミッション変更 php.iniの設定は extension_dir = /usr/lib/php/modules extension=mysql.so extension=mbstring.so これでよさそうなのですが、相変わらず「mysql 拡張がありません。」が出てきます。 phpinfoを見ると、mbstringやmcryptは見えるのですが、mysqlは見えません。 mysqlのデーモンはちゃんと稼働しています。 > find / -name mysql.so とすると /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.soとなります。 extension_dir = /usr/lib/php/modulesのphp.iniの記載に対し、mysql.soが全然違うところに来ておりこれが読めない原因と推測しています。 対策としてのこのmysql.soをコピーして/usr/lib/php/modulesにコピー、再立ち上げしてみましたが駄目でした。 どのようにすれば動くようにご教授願います。 環境は CentOS 5.7 Apache 2.2.3 MySQL 5.0.77 PHP 5.3.8 phpMyAdmin 3.4.7 となります。宜しくお願い致します。

  • MySQL
  • 回答数4
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • tomaju
  • ベストアンサー率76% (84/110)
回答No.4

yum で No package になってしまう件ですが、 remi レポジトリが追加されていないか、設定が enabled=0 かもしれません。 後者であれば、 yum --enablerepo=remi install php-mysql-5.3.8 で行けるかもしれません。 (epel や rpmforge が見えるので、remi も追加されていそうな予感がします) これがうまく進んだ場合、MySQL も合わせてバージョンアップすることになると思います。 webサーバの機能に影響が出ないか確認・検討して進めてください。 パッケージファイルののダウンロードを yum まかせにせず、自分で行う場合ですが、 > [root@mta ~]# rpm -ivh php-mysql-5.3.8-5.el5.remi.1.i386.rpm > エラー: 依存性の欠如: > libmysqlclient.so.18 は php-mysql-5.3.8-5.el5.remi.1.i386 に必要とされています > ... http://remi-mirror.dedipower.com/enterprise/5/olds/i386/mysql-libs-5.1.56-1.el5.remi.i386.rpm から mysql-libs-5.1.56-1.el5.remi.i386.rpm がダウンロードできたので、パッケージの内容を確認してみました。 libmysqlclient.so.18 は含まれていません。 [root@www ~]# rpm -qlp mysql-libs-5.1.56-1.el5.remi.i386.rpm | grep libmysqlclient /usr/lib/mysql/libmysqlclient.so.16 /usr/lib/mysql/libmysqlclient.so.16.0.0 /usr/lib/mysql/libmysqlclient_r.so.16 /usr/lib/mysql/libmysqlclient_r.so.16.0.0 http://remi-mirror.dedipower.com/enterprise/5/remi/i386/remi-release-5-8.el5.remi.noarch.rpm から ダウンロードできる mysql-libs-5.5.17-1.el5.remi.i386.rpm を確認してみたところ libmysqlclient.so.18 が含まれています。 [root@www ~]# rpm -qlp mysql-libs-5.5.17-1.el5.remi.i386.rpm | grep libmysqlclient /usr/lib/mysql/libmysqlclient.so.18 /usr/lib/mysql/libmysqlclient.so.18.0.0 よって mysql-libs-5.5.17-1.el5.remi.i386.rpm をインストールした後、 php-mysql-5.3.8-5.el5.remi.1.i386.rpm をインストールすればいいかと思います。 ただし、MySQL 5.5.17 なので、インストール済みの 5.0.77 と競合すると思います。 もしMySQLを使い始めていないのであれば、5.5.17 に入れ替えてみてはどうでしょうか。 手順はこちらが参考になるでしょうか。 http://www.goofoo.jp/2011/10/1437 もしかすると一旦 5.0.77 をアンインストールした方がいいかもしれません。 webサーバの機能に影響が出ないか確認・検討し、必要に応じて 設定やデータの等バックアップを取った上で行ってください。

tajix14
質問者

お礼

有難うございます。 yum --enablerepo=remi install php-mysql-5.3.8では、エラーが出てしまったため、次に教えて頂いた > mysql-libs-5.5.17-1.el5.remi.i386.rpm をインストールした後、 >php-mysql-5.3.8-5.el5.remi.1.i386.rpm をインストールすればいいかと思います。 をやってみました。 途中、 エラー: 依存性の欠如: mysql-libs = 5.5.17-1.el5.remi は mysql-5.5.17-1.el5.remi.i386 に必要とされています という文字が出てきたため、remiのインストールが必要なことが分かりました。 下記のサイトを参考にremiをインストールしました。 http://colo-ri.jp/develop/2011/10/update-php-and-mysql-on-sakura-vps-server.html そして、ご指示頂いた mysql-libs-5.5.17-1.el5.remi.i386.rpm php-mysql-5.3.8-5.el5.remi.1.i386.rpm をインストールしたところ、無事phpMyAdminの画面に辿り着くことが出来ました。 1週間もの長い間お付き合い頂き、本当に有難うございました。 感謝します!!

その他の回答 (3)

  • tomaju
  • ベストアンサー率76% (84/110)
回答No.3

> インストール済みの php 関連のパッケージは下記となります。 > > > rpm -qa | grep php > > php-gd-5.3.8-5.el5.remi.1 > php-pgsql-5.3.8-5.el5.remi.1 > php-common-5.3.8-5.el5.remi.1 > php-ldap-5.3.8-5.el5.remi.1 > php-pdo-5.3.8-5.el5.remi.1 > php-5.3.8-5.el5.remi.1 > php-mbstring-5.3.8-5.el5.remi.1 > php-cli-5.3.8-5.el5.remi.1 > php-mcrypt-5.3.8-5.el5.remi.1 なるほど remi の 5.3.8 のパッケージがインストール済ですね。 php-mysql は見当たりません。 これらはどうやってインストールしたのでしょう。 同じ要領で php-mysql-5.3.8-5.el5.remi.1 をインストールできませんかね。 yumに remi レポジトリの追加をしていれば、バージョンを指定することで 5.3.8 の方をインストールできるのではないかと思います。 以下のような感じバージョンを付加して試してみてください。 (今手元で確認ができないもので...すみません) yum install php-mysql-5.3.8-5.el5.remi.1 yum install php-mysql-5.3.8 あるいはパッケージファイルをダウンロードしてきて、 インストールする手もあると思います。 http://iut-info.univ-reims.fr/remirpms/enterprise/5/remi/i386/php-mysql-5.3.8-5.el5.remi.1.i386.rpm を wget 等でダウンロードしてきて、 yum install php-mysql-5.3.8-5.el5.remi.1.i386.rpm あるいは、 rpm -ivh php-mysql-5.3.8-5.el5.remi.1.i386.rpm してみてください。 もしかすると mysql のバージョンがあわなくて、失敗するかもしれませんが、 そのときはまた検討しましょう。 > php 5.3.8は下記のコマンドでインストールしました。 configure 止まりであればインストールされていません。 (make install しないと) パッケージを使うのか、ソースからインストールしたものを使うのか どちらかにすべきだと思います。 後から入れた方でインストール済みのものを壊したりして、 トラブルの元です。

tajix14
質問者

補足

お返事が遅くなり大変申し訳ございません。 長いことお付き合い頂き大変感謝いたしております。 ご連絡頂いた方法を試してみましたが下記の通りうまくインストール出来ませんでした。 > yum install php-mysql-5.3.8-5.el5.remi.1 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: rsync.atworks.co.jp * epel: ftp.riken.jp * extras: rsync.atworks.co.jp * rpmforge: ftp-stud.fht-esslingen.de * updates: rsync.atworks.co.jp Setting up Install Process No package php-mysql-5.3.8-5.el5.remi.1 available. Nothing to do > yum install php-mysql-5.3.8 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: rsync.atworks.co.jp * epel: ftp.riken.jp * extras: rsync.atworks.co.jp * rpmforge: apt.sw.be * updates: rsync.atworks.co.jp Setting up Install Process No package php-mysql-5.3.8 available. Nothing to do [root@mta ~]# rpm -ivh php-mysql-5.3.8-5.el5.remi.1.i386.rpm エラー: 依存性の欠如: libmysqlclient.so.18 は php-mysql-5.3.8-5.el5.remi.1.i386 に必要とされています libmysqlclient.so.18(libmysqlclient_16) は php-mysql-5.3.8-5.el5.remi.1.i386 に必要とされています libmysqlclient.so.18(libmysqlclient_18) は php-mysql-5.3.8-5.el5.remi.1.i386 に必要とされています [root@mta ~]# と出てしまいます。 libmysqlclient_16 libmysqlclient_18 でググッて見ると、rpm -ivh mysql-libs-5.1.56-1.el5.remi.i386.rpm あたりが適合しそうだったので、これをインストールしてみましたが、変化はありませんでした。 また、 configure 止まりであればインストールされていません。 (make install しないと)のアドバイスをもとに make make install をやってみました。 > make install Installing PHP SAPI module: cgi Installing PHP CGI binary: /usr/local/bin/ Installing PHP CLI binary: /usr/local/bin/ Installing PHP CLI man page: /usr/local/man/man1/ Installing build environment: /usr/local/lib/php/build/ Installing header files: /usr/local/include/php/ Installing helper programs: /usr/local/bin/ program: phpize program: php-config Installing man pages: /usr/local/man/man1/ page: phpize.1 page: php-config.1 Installing PEAR environment: /usr/local/lib/php/ /root/php-5.3.8/build/shtool install -c ext/phar/phar.phar /usr/local/bin ln -s -f /usr/local/bin/phar.phar /usr/local/bin/phar Installing PDO headers: /usr/local/include/php/ext/pdo/ 上記のようになったのですが、 肝心な、phpmyadminのエラーは解決しませんでした。 やはり、ここまでくるとゼロからインストールした方が早いでしょうか? その選択肢も覚悟しだしましたが、webサーバとして稼働中のため出来ればこのまま行きたいです。 ご助言をお願い申し上げます。

  • tomaju
  • ベストアンサー率76% (84/110)
回答No.2

> yum -y install php-mysql > としたところ、 > php-mysql-5.1.6-27.el5_5.3.i386 from base has depsolving problems > --> Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-mysql-5.1.6-27.el5_5.3.i386 (base) > Error: Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-mysql-5.1.6-27.el5_5.3.i386 (base) yum -y install php-mysql はエラーになっていますね。 インストールできていませんから、/usr/lib/php/modules/mysql.so が存在しないのは納得がいきます。 rpm -qa | grep php でインストール済みの php 関連のパッケージが表示されますが、 何が入っているでしょうか。 「ソースからアップ」とは何をなさったのでしょうか? ソースから configure, make install を行い、パッケージでインストールされているファイルを 強引に上書きしたということでしょうか。 あるいはソースからパッケージをビルドして、アップグレードをしたのでしょうか。

tajix14
質問者

補足

有難うございます。 インストール済みの php 関連のパッケージは下記となります。 > rpm -qa | grep php php-gd-5.3.8-5.el5.remi.1 php-pgsql-5.3.8-5.el5.remi.1 php-common-5.3.8-5.el5.remi.1 php-ldap-5.3.8-5.el5.remi.1 php-pdo-5.3.8-5.el5.remi.1 php-5.3.8-5.el5.remi.1 php-mbstring-5.3.8-5.el5.remi.1 php-cli-5.3.8-5.el5.remi.1 php-mcrypt-5.3.8-5.el5.remi.1 php-common-5.3.8-5.el5.remi.1が見えます。 しかしながら、yum -y install php-mysql時には認識してくれません。 php 5.3.8は下記のコマンドでインストールしました。 get http://jp.php.net/get/php-5.3.8.tar.gz/from/jp2.php.net/mirror tar xvzf php-5.3.8.tar.gz ./configure --enable-mbstring--with-pgsql=/usr/local/pgsql/--with-mysqli=mysqlnd--with-apxs=/usr/local/apache/bin/apxs--enable-versioning--with-gd--with-jpeg-dir=/usr/lib/--with-zlib--with-freetype-dir=/usr/include/freetype2/--enable-gd-native-ttf--enable-gd-jis-conv この時点でインストールが確認できなかったため、再度 cd php -5.3.8 ./configure --enable-mbstring--with-mysqli=mysqlnd ./configure --with-mysql=/usr/bin/mysql_config \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd ./configure --with-mysql=/usr/bin/mysql config \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd みたいなことを繰り返しています。 お手数をおかけいたしますが宜しくお願い致します。

  • tomaju
  • ベストアンサー率76% (84/110)
回答No.1

> yum -y install php-common > yum -y install php-mbstring > yum -y install php-mcrypt > yum -y install php-mysql これでインストールされるのは標準パッケージの PHP 5.1.6 ではないかと思います。 一方で環境が PHP 5.3.8 とありますが、上記以外にインストール作業をしていませんか? もしかしてソースからインストールしたのでしょうか? phpinfo ではバージョンいくつになってますでしょうか? 設定を記述した php.ini は参照されていないのかもしれません。 phpinfo の「Configuration File (php.ini) Path」 どこの php.ini が参照されるかわかります。 「Loaded Configuration File」があれば、実際にどのファイルが読み込まれているかわかります。 想定しているものと相違がないか確認してみてください。 > /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.soとなります。 > extension_dir = /usr/lib/php/modulesのphp.iniの記載に対し、mysql.soが全然違うところに来ておりこれが読めない原因と推測しています。 > 対策としてのこのmysql.soをコピーして/usr/lib/php/modulesにコピー、再立ち上げしてみましたが駄目でした。 これは Perl のモジュールなので、PHPでは使えないでしょう。 yum -y install php-mysql を行った後であれば、 /usr/lib/php/modules/mysql.so も find で見つかると思います。

tajix14
質問者

補足

お忙しい中ご回答有難うございます。 >phpinfo ではバージョンいくつになってますでしょうか? はい、おっしゃる通り、centOS5系のPHP5.1では使えないものがあるため、ソースからアップしました。phpinfoではPHP Version 5.3.8と出ます。 また、phpinfoで示されたphp.iniは/etc/php.iniであり、正しく見に行っているようです。 >yum -y install php-mysql を行った後であれば、 >/usr/lib/php/modules/mysql.so も find で見つかると思います。 はい、それは出てこないのです。実際に/usr/lib/php/modules/を見に行きましたが見当たりませんでした。 現在、modules内にあるのは、curi.so fileinfo.so gd.so json.so idap.so mbstring.so mcrypt.so pdo.so pdo_pgsql.so pdo_sqlite.so pgsql.so phar.so phpcups.so zip.so です。 やはり、yum -y installの時点でmysql.soはインストールされていないという理解で正しいですね。 このあとにも質問しておりますが、 yum -y install php-mysql としたところ、 php-mysql-5.1.6-27.el5_5.3.i386 from base has depsolving problems --> Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-mysql-5.1.6-27.el5_5.3.i386 (base) Error: Missing Dependency: php-common = 5.1.6-27.el5_5.3 is needed by package php-mysql-5.1.6-27.el5_5.3.i386 (base) You could try using --skip-broken to work around the problem You could try running: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest という形で、php-common = 5.1.6-27.el5_5.3 が必要と出てきます。 そこで、 yum -y install php-common とすると Package matching php-common-5.1.6-27.el5_5.3.i386 already installed. Checking for update. Nothing to do となり、既にインストール済みと出ます。 この堂々巡りで先へ進めなかったため、今回はphp-commonはインストール済みなので効いているものとして質問していました。 commonとmysqlはmodule内には出てきませんので、やはり、php-commonに根本原因がありそうです。ただ、php-common-5.1.6-27.el5_5.3.i386 already installed. と言われてしまうと次の手が思い浮かびません。 phpinfoのConfigure Command を確認すると、mysqlに関する部分は下記の通りです。 --with-mysql=shared,/usr' '--with-mysqli=shared,/usr/lib/mysql/mysql_config' '--with-pdo-mysql=shared,/usr/lib/mysql/mysql_config 何が原因かわからず苦戦していますが、解決したいことは、 「mysql 拡張がありません。PHP の設定をチェックしてみてください。」 を解決することです。 もし、何かアイデアが御座いましたらご指導くださいますようお願い申し上げます。

関連するQ&A

  • php拡張モジュールのインストール

    いつもお世話になっております。 phpでcurlを使いたく、 以下のサイトを参考にして、実行したいと考えています。 http://ext.omo3.com/php/php.ini_curl.so.html その際、 >■php.iniでcurl.coを指定する >上記のディレクトリとcurl.soを指定する。 のところで、 extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/" extension=curl.so としていますが、 こちらの設定をする前に、既に、 $ php -i | grep extension にて、 extension_dir => /usr/lib/php/modules => /usr/lib/php/modules mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. となっていた場合、 どのようにしたらいいのでしょうか。 上記に同じ行を追加して、追記する形でしょうか。 それとも、現在の設定内容を編集するのでしょうか。 それとも、他になにかありますでしょうか。 お手数をおかけしますが、何卒よろしくお願い申し上げます。

  • PHPとMySQLが接続できません。(Linux環境)

    【状態】 ブラウザからサーバのPHPにアクセスした際、MySQLに接続してSelect文を流すスクリプト(仮にselect.phpとします)を作成しました。 しかしブラウザからドキュメントルート直下の同スクリプトにアクセスすると、 Fatal error: Call to undefined function mysql_connect() in [スクリプトのフルパス] on line 14 とエラー表示されてしまいます。 phpinfo()を確認したところ、MySQLのセクションがない状態。 他のWebページを参考にphp-mysqlモジュールをyumでインストールし、php.iniに   extension=mysql.so   extension=mysqli.so と   extension_dir = "/usr/lib/php/modules" の2行を追加しApacheを再起動しましたが、状態変わらずです。 ちなみにApacheとPHPはソースからインストールし、httpd.confもphp.iniも/usr/local/apache2/conf/以下に配置。 httpd.conf中に   PHPIniDir "/usr/local/apache2/conf" の表記もあり、MySQLに接続しないPHPは正常に処理されます。 また、mysql.so/mysqli.soも上記php.iniで指定した"/usr/lib/php/modules"に存在します。 何か原因として考えられる事はありますでしょうか。 心当たりのある方がいらっしゃいましたらアドバイスお願い致します。 【各バージョン ※インストールした順に表記】 OS:CentOS 5.2 (VMWare上で稼働) カーネル:2.6.18-92.el5 Apache:2.2.9 (ソースからコンパイル) PHP:5.2.6 (ソースからコンパイル) php-mysql:5.1.6 (yumでインストール) mysql:5.0.45 (yumでインストール) mysql-server:5.0.45 (yumでインストール) 以上、見にくくて申し訳ありませんが宜しくお願い致します。

    • ベストアンサー
    • PHP
  • phpMyAdminでのエラー「mysql 拡張をロードできません」

    お世話になります。 タイトルの通り、http://ホスト名/phpmyadmin/ にアクセスすると、 「mysql 拡張をロードできません。PHP の設定を確認してください」 とエラーメッセージが出てきてしまいます。 環境は以下の通りです。 CentOS 5.3 Apache 2.2.3 MySQL 5.0.77 php 5.1.6 phpmyadmin 2.11.9.4 httpd、mysql、phpはyumにてインストールを行っており、phpmyadminはsvn checkoutでインストールを行っております。 このエラーについては、php-mysqlをインストールする事で解決する事が多いようですが、 yum -y install php-mysql と打ち込んでインストールを行っても、同じエラーが出てきてしまいます。 また、エクステンションの参照先が間違っている可能性もあるため(と言うよりそうエラーで言われているので…)調べてみました。 php.iniのextension_dirの参照先にはmysql.soがちゃんと入っておりまして、 mysql.iniにはextension=mysql.soと記述されている状態です。 試しにphp.iniにextension=mysql.soと記述したり、mysql.soでなくmysqli.soに変えてみたりしましたが、 それでもエラーが出たままとなっております。 詳しい方がいらっしゃいましたら、是非ご教授いただきたいと思います。 宜しくお願いいたします。

  • ubuntuで、PHPからMYSQLが見えません。

    MySQLとPHPがつながりません。 (コマンドラインからはmysqlにログインできます)。 どなたか、原因等わかるかたがいらっしゃったらご教授ください。 バージョンは以下の通りです。 MySQL-5.0.38 Apache-2.0 PHP-5.2.1 ubuntu-7.04 全てapt-get installで、APACHE、MYSQL、PHPの順でインストールしています。 phpinfoでもmysqlの項目表示がされず、またmysql_connectなどの 関連するコマンドも「call to undefined~」のエラーが出力されてしまいます。 /etc/php5/apache2/php.iniに、 extension=mysql.so extension_dir="/usr/lib/perl5/auto/DBD/mysql/ の記述もしてみましたが状況は変わりませんでした。 (/usr/lib/perl5/auto/DBD/mysql/mysql.soをlocateで見つけました) 以上、お手数でございますがどうぞよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • phpのextension_dirを複数指定したい

    php 4.3.9を使用しております。 redhatのup2dateでインストールしたphpを使用しているのですが、 php.iniでextension_dirが extension_dir = /usr/lib/php4 となっておりますが、これを extension_dir = /usr/lib/php4:/another/dir と複数指定したく思っています。 現在extensionの開発をしていて、 毎回自作のextensionをコピーするのがかったるいので なんとかしたいなぁ、というのが目的です。 しかし、上記のように指定すると、 PHP Warning: Unknown(): Unable to load dynamic library '/usr/lib/php4:/another/dir/gd.so' - /usr/lib/php4:/another/dir/gd.so: cannot open shared object file: No such file or directory in Unknown on line 0 (後略) と、すべてのextensionについてエラーが出てしまいます。 何かいい方法はないでしょうか?よろしくお願いします。

    • ベストアンサー
    • PHP
  • ffmpegをphpから使おうとしていますが・・

    ffmpegをphpから使いたいと思って サーバーにffmpegとffmpeg-phpをインストールしたのですが、 テストページで以下のようなエラーがでてしまいます。 Warning: dl() [function.dl]: Unable to load dynamic library '/usr/lib/php/modules/ffmpeg.so' - /usr/lib/php/modules/ffmpeg.so: undefined symbol: img_resample in /var/www/html/ffmpeg/test_ffmpeg.php on line 17 /usr/lib/php/modules/ffmpeg.soは有りました。 ffmpegコマンドも最初は動きませんでしたが、いろいろ無いと言われた*.soファイルへのシンボリックリンクを/usr/lib内に作ることで動くにようにはなりました。 他にphp.iniにextension=ffmpeg.soと入れてみたりいろいろいじっていましたがどうにも私の知識では解決できそうにありません。 何卒お知恵をお借りできたらと思い投稿させていただきました。 環境は、 fedora8 php5 ffmpegのインストールは http://codezine.jp/article/detail/2444?p=1 ffmpeg-phpのインストールは http://www.phppro.jp/phptips/archives/vol50/2 を参考にさせていただきました。 宜しくお願いしますm(_ _)m

    • 締切済み
    • PHP
  • phpインストールについて

    CentOS5.0にphp5.2系をmakeし、インストールを 行いました。 その後の確認を行ったときにhttpを再起動したのですが 起動されません。 (httpはCentOSに入っているものを使用しています。) phpをインストールする前は問題なく起動できていました。 httpのerrorログを見ると Directory index forbidden by Options directive: /var/www/html/ のエラーがでていました。 /var/www/html/自体は存在しますしhttpd.confにも設定しています。 ちなみにphpのコンパイルは ./configure --with-apxs2=/usr/sbin/apxs \ --prefix=/usr/local \ --with-mysql=/usr/lib/mysql \ --enable-mbstring \ --with-gd \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --with-zlib-dir=/usr \ --with-pear \ --with-openssl で行いました。 どこから調査すればよいのでしょうか?

    • 締切済み
    • PHP
  • phpのextension_dirのデフォルトは??

    prefix=/usr/local を指定してインストールした場合、 extension_dirのデフォルトはどこになるのでしょうか? 現状はデフォルトのまま下記のようになっています。 extension_dir = "./" php.iniのパスは、/usr/local/etc/php.iniになっています。 libdirはlib64を指定してインストールしました。 extension_dirを変更する事は出来ず、このデフォルトのパスを探り当てなければならず、大変困っています。 php.iniと同階層に位置するのか、それともlibdirと同階層になるのか。 それとも他の場所があるのか。 誰か解るかたがいらっしゃいましたら教えて頂けると助かります!

  • PHPのCGIモードとについて

    PHPのCGIモードとについて PHPのCGIモードというのがよく分かりません。 自分はcentOSにソースコードからPHPを入れております。 で、主にApacheと連携させています。 ただ、最近は #!/usr/local/bin/php -q などを最初に書いてコマンドラインからの使用が多くなっております。 自分は ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-freetype-dir=/usr/local/lib --with-gd --with-mysqli=/usr/local/mysql5.5/bin/mysql_config --with-pdo-mysql=/usr/local/mysql5.5 --with-mysql-sock=/var/lib/mysql/mysql.sock --with-zlib --with-xsl=/usr/lib --enable-mbregex --enable-mbstring --enable-bcmath --with-mcrypt --disable-posix-threads --enable-bcmath --with-readline --with-curl=/usr/local/curl --with-curlwrappers --with-openssl --with-openssl-dir=/usr/lib64/openssl --enable-pcntl のようにしているのですが、これでCGIモードにはなっているのでしょうか? いまいち概念が掴めないでおります。 具体的な事例や、CGIモードでない場合との違いなどを教えていただけないでしょうか? また、CGIモードにするために何かphp.ini等で設定をするような事があるのであれば、 どのようにしてCGIモードとして使えるようになるのかをアドバイスいただきたいと思います。

    • ベストアンサー
    • PHP
  • MySQLとPHPで日本語が文字化けする。

    MySQLとPHPでアプリを開発中です。 MySQLに登録済の日本語文字列データをPHPでselectして echoを使ってクライアント(Windows XP)のブラウザに表示させると、 文字化けします。 全角文字がすべて半角の '?' になります。 MySQLの状態を調べるために以下を実行しました。 SHOW VARIABLES LIKE 'char%'; 結果は以下のとおりでした。 character_set_client utf8 character_set_connection utf8 character_set_database utf8 character_set_filesystem  binary character_set_results utf8 character_set_server utf8 character_set_system utf8 character_sets_dir /usr/local/mysql5.0.51a/share/mysql/charsets/ PHPの内部エンコードはUTF-8です。 php.iniの関連設定は以下のとおりです。 default_charset = "UTF-8" mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = auto mbstring.http_output = UTF-8 mbstring.detect_order = SJIS,EUC-JP,JIS,UTF-8,ASCII mbstring.substitute_character = "none" mbstring.encoding_translation = On extension_dir = "/usr/local/lib/php/extensions" extension=php_mysqli.dll extension = gd.so extension = mysqli.so extension = xmlrpc.so MySQLもPHPもすべてUTF-8で統一したので問題ないはずだと 思ったのですが? 半角アルファベットは問題なく表示されます。 サーバー側OSはSolarisです。 MySQLから正しくデータを得られていないように思えるのですが。 ヒントでも結構ですから教えていただけるとありがたいです。 よろしくお願いします。

    • ベストアンサー
    • PHP