• 締切済み

PHP7のphp.iniが読込みできない

Windows7 64bitの C:\Apache24にApache2.4をインストールして、 C\php7にPHP7をインストールしました。 (php-7.1.1-Win32-VC14-x64.zipを解凍してできたフォルダをphp7にリネームしてC:\に置きました) それで、Apacheのhttpd.confやphp.iniの必要部分を書き換えて、 C:\Apache24\htdocsに <? phpinfo() ?> と記入したinfo.phpを置いて、Apacheを起動して、 ttp://127.0.0.1/info.phpにブラウザでアクセスしたところ、 phpinfo()の画面が表示されて、インストールできたと思ったのですが、 良く見ると、 php.iniでextension_dir = "c:\php7\ext"と設定しているのに、 extension_dirがC:\php7\extではなく、C:\php\extとなっていて、 mbstringなども読み込まれていないのです。 Loaded Configuration File もnoneとなっていて、php.iniが読み込まれていないようです。 Configuration File (php.ini) Path はC:\windows となっていますが、C:\windows には php.iniは入れていません。 ネットで調べて、httpd.confに PHPINIDir "C:/php7" と記入するといいとあったので、記入してApacheを再起動して info.phpにアクセスしたところ、白紙のページが表示されました。 PHPINIDir "C:/php7"を削除して、Apacheを再起動してinfo.phpにアクセスすると、 phpinfo()の画面が表示されます。 試しに、C:\windowsにphp.iniを入れてみると、また白紙のページになります。 つまり、php.iniを読み込もうとすると白紙にページになっていまうのです。 php.iniにエラーがあるのかと思って、解凍して何も変更していないphp.iniを 使ってみてもだめでした。php.iniの構文チェックができればと思って いろいろ調べたのですがネット上で見つからなかったです。 希望ですが、なんとかphp.iniを読み込んで白紙ではなくページを表示できて、 mbstringなども有効になっていればと思います。 どうぞよろしくお願いします。

  • PHP
  • 回答数2
  • ありがとう数4

みんなの回答

  • tkf-
  • ベストアンサー率58% (821/1396)
回答No.2

> C:/phpにインストールして > Apache2.2もインストールしているので 影響大ありです。 まず、Apacheがどちらのものが動いているか確認してください。 Apache2.2をサービスとして登録、起動しているのなら、停止してから、Apache2.4を起動してください。 また、環境変数PATHももう一度見直してください。中に、C:¥phpに通っている部分はありませんか。

neko173
質問者

お礼

お返事が遅くなりましてすいません。 実は、<? phpinfo() ?>を<?php phpinfo() ?> としたら解決しました。php.iniは読み込まれていたのですが、 phpinfoがエラーになっていたので表示されなかっただけでした。 些細なことでお手間を取らせてしまい、本当に申し訳ありませんでした。 PHP7は<?phpとしないとエラーになるのですね。 気付いた時点で質問を締め切っていればよかったのですが、 締め切る方法がわからなかったのです。 方法がわかったので これで質問は締め切らせていただきます。 ありがとうございました。

  • tkf-
  • ベストアンサー率58% (821/1396)
回答No.1

32bitの環境でぱぱっと構築してみましたが、おっしゃるような状態にはなりませんでした。 (正常に、C:¥php7¥php.ini を読み込んでくれています。) 環境変数Pathにて、C:¥php7 は通ってますでしょうか。 あと、Apacheのエラーログにヒントとなるようなものは記載されていませんでしょうか。

neko173
質問者

お礼

ご返答ありがとうございます。 Apacheのエラーログには何もなかったです。 環境変数にはC:\php7と登録していて、コマンドプロンプトで php --iniと入力すると Configuration File (php.ini) Path: C:\windows Loaded Configuration File: C:\php7\php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none) と表示されます。コマンドからはphp.iniは読み込めているようですので、 やはりApacheの問題でしょうか。 ApacheとPHP7の32bit版をインストールして試してみます。

neko173
質問者

補足

御礼と補足がよくわかっていないので 順番がおかしいかもしれなくてすいません。 ApacheとPHP7の32bit版をインストールして試したのですが やはり同じように白紙になります。 PHP5を C:/phpにインストールして Apache2.2もインストールしているので それが影響しているのでしょうか・・・

関連するQ&A

  • Configuration File (php.ini) Pathにつ

    Configuration File (php.ini) Pathについて Apache2.2 PHP5.3.2 をWindowsXPマシンにインストールしました。 Configuration File (php.ini) Pathは現在C:\WINDOWSになっています。 httpd.conf内にPHPIniDir "C:/PHP5"(PHPインストールディレクトリです) という記述をし、PHP.iniファイルを同ディレクトリに追加したのですが、 Configuration File (php.ini) Pathは変わらず、PHPが動作しません。 (Apacheは再起動しています) PHPIniDir "C:/WINDOWS"でもダメです。 現状では、 ・PHP.iniをC:\WINDOWSにおく ・httpd.conf内にPHPIniDir "C:/PHP5"を記述(C:\PHP5以下にはPHP.iniをおかない) だとうまくいきます。 ちなみにLoaded Configuration Fileはnoneになっています。 ことの発端は、date関数でワーニングが出たので、調べたところPHP.ini内に date.timezone = "Asia/Tokyo" を追加するとなおるということを見たので修正したのですがなおらなかったことからです。 希望としては ・httpd.conf内にPHPIniDir "C:/PHP5"を記述し、PHP.iniをC:/PHP5以下におきたい  (Configuration File (php.ini) PathをC:/PHP5に変更したい) ・date_default_timezone_setという関数ではなくPHP.iniの設定で上記ワーニングを  なくしたい です。 XAMPPを使用…以外でご回答頂けるとありがたいです。 よろしくお願いしますm(__)m

  • PHP+Apacheの連携を教えていただけませんか?

    PHPとApacheの連携がうまくできなくて困っています。 自分でもいろいろ調べたり、似た質問の回答を参考にしたりしましたが解決できません。 よかったら教えてください。お願いします。 ------------------------------ 症状 ------------------------------ 1.Apacheは無事起動できています。(http://localhost/は表示済み) 2.<?php phpinfo(); ?>を記述したphpファイルを実行すると、phpファイルのダウンロードが開始します。(http://localhost/phpinfo.php/) 3.<html>~<b>開始</b><br><?php> echo "こんにちは"; <?/>~</html>を記述したphpファイルを実行すると、開始のみ表示されます。 ------------------------------ 環境 ------------------------------ OS:Windows Vista PHP:PHP5.2.5 Apache:Apache2.0.63 ------------------------------ 今までに操作した内容 ------------------------------ <各ルート> c:/php c:/Windows/php.ini c:/Program Files/Apache Group/Apache2/conf/httpd.conf <httpd.confへの追加> LoadModule php5_module c:/php/php5apache2.dll AddType application/x-httpd-php .php AddType application/x-httpd-source .phps <php.iniへの追加、変更> output_handler =mb_output_handler default_charset = "EUC-JP" extension_dir = "c:/php/ext" extention=php_mbstring.dll extention=php_mysql.dll mbstring.language = Japanese mbstring.internal_encording = EUC-JP mbstring.http_input = auto mbstring.http_output = EUC-JP mbstring.encording_translation = On mbstring.detect_order = auto mbstring.substitute_character = none; 何か情報が足らなければ追記します。 詳しく記載されているWebサイトでもいいので、教えてください。 よろしくお願いします。

    • 締切済み
    • PHP
  • apache_2.2.11+php-5.2.9-2について

    apache_2.2.11+php-5.2.9-2、mysql5をwindows-xp-pro にセットアップしたのですがphpinfoでmbstring、mysqlともに 表示されません! php.iniのextension=php_mysql.dllのコメントはずしました、 extension_dir="C:\php\ext"も直しました。 apacheもphpも上記のほかは動作しているみたなのですが。 なにか原因をご存知の方おられました宜しくお願い 致します。 PS MYSQLは当たり前ですがコマンドでは普通に 動きます。

    • 締切済み
    • PHP
  • php.iniがない

    たびたびお世話になっております。 <環境> Red Hat Enterprise Linux ES v.4 PHP 4.4.2(cli) この度、Apache2とPHPとMySQLをソースからインストールしました。 どれもインストールが終わって、開発に進んだのですが php.iniのextension_dir の値を変更しようと思ったところ php.iniがありません。 # find / -name "php.ini" -ls で検索しましたが、表示されません。 でも、phpinfo()は表示されています。 ちょっと気になったのが、phpinfo()で表示される Configuration File (php.ini) Path が 「/usr/local/lib」となっていて、php.iniで終わっていないことです。 インストールの方法がまずかったのでしょうか? ご教授よろしくお願いいたします。

  • PHPのインストールについて

    php-5.1.2-Win32 Apache_2.0.55-win32-x86-no_ssl windows XP 秀丸エディタ 色々なサイトを見てPHPやapacheのインストールをするのですが ブラウザで"<? phpinfo(); ?>"というスクリプトを実行しても アドレス(http://localhost/phpinfo.php) ファイルの保存になってしまいます:(ダウンロード用のダイアログ起動する) httpd.conf 又は php.ini の修正もしているんですが php5ts.dllをコピー →(c:¥windows¥system32) php.ini.distをphp.iniにリネームしコピー →(c:¥windows) ファイル修正後、Apache を再起動もしています。 Apacheでは、テスト画面は成功しています PHPとApacheの連携がわるいのか、他に原因があるのかわかりません 初心者です。どうぞ宜しくお願いします。 ※ httpd.conf の修正 LoadModule php5_module c:/php/php5apache2.dll AddDefaultCharset none AddType application/x-httpt-php .php AddType application/x-httpd-php-source .phps ※ php.ini の修正 output_buffering = On output_handler = handler=mb_output_handler default_charset = Shift_JIS doc_root ="C:/Program Files/Apache Group/Apache2/htdocs" extension_dir = "c:/php/ext" extension=php_mbstring.dll mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.substitute_character = auto mbstring.script_encoding = EUC-JP

    • ベストアンサー
    • PHP
  • PHP拡張モジュールが読み込めない?

    環境 OS:windowsXP Apache ver 2.2 PHP ver 5.1.4 問題の発端はphpからMySQLを呼び出す時に下記のエラーが出た事に始まりました。 Call to undefined function mysql_connect() 恐らくextensionファイルがうまく読み込めてないものと思われるのですが、php.iniの設定でしょうか? extension関連の設定は以下になっています。 extension_dir = "C:\php\ext" extension=php_mysql.dllのコメントアウトをはずす。 phpinfo()で確認してみましたが、表示されるのはConfiguration PHP Core まででその他の設定は表示されません。 extension_dirの項目は変更すると反映されるみたいですので、php.iniは読み込めていると思うのですが…。 GD2モジュールのサンプルも動かしてみましたが、やはり駄目でした。 ApacheのhttpdconfでPHPIniDirを設定しても結果は同じでした。 どなたか、原因の解る方いらっしゃいますでしょうか?

    • ベストアンサー
    • PHP
  • php.iniが認識されません

    php5、MySQL5、Apache2.2を使おうと思っているWindowsXP利用の初心者です。 それぞれは動作しているのは確認できたのですが、phpinfo()を表示させると、MySQLがSTARTしているのに、MySQLの項目が表示されません。 c:\Windowsにあるphp.iniにはextension=php_mysql.dll等を記述しているのですが、php.iniを削除しても、phpinfo()の結果が変わらないので、php.iniが認識されていないような気がします。 申し訳ありません、どなたかお助けいただけないでしょうか。

    • ベストアンサー
    • PHP
  • PHPでpostgreSQLと接続しようとすると「call to undefind function pg_connect」というエラーが出る

    表題の件で質問させて下さい。 いろいろネットで調べると、php.ini の extension_dir="phpインストールフォルダのextフォルダ" extension=php_pgsql.dllのコメントをはずす で大抵は解決しているようなのですが、その対応をしてもどうも解決しません。 以下、わかる範囲で確認してみた項目です。 ・phpinfoで確認してみても、postgreSQLの項目は表示されていませんでした。 ・phpinfoの 「Loaded Configuration File 」のphp.iniのパスもあっています。 ・ためしに、extension=php_mbstring.dll のコメントをつけたりはずしたりすると、phpinfoではちゃんと反映されていました。 ・もちろん、extension_dirに設定しているディレクトリには、php_pgsql.dllがありました。 ちょっと何が原因なのか見当がつきません。 どなたかお分かりになる方がいらっしゃいましたらご教授願えませんでしょうか。 環境は windowsXP apache/2.2.9 PHP/5.2.6 です。 よろしくお願い致します。

    • 締切済み
    • PHP
  • apache2.2とPHP5のインストール

    こんにちは。パソコンはあまり得意ではないのですが、PHPを使わなければならない状況となり、apacheが正しく起動してくれないため困っています。 OSはvistaで、apache2.2とPHP5をインストールしました。グーグルで調べて環境設定をしたのですが、apacheを起動しても[The requested operation has failed!」と出てきてしまいます 。 <httpd.confで> LoadModule php5_module c:/php/php5apache2_2.dll Addtype application/x-httpd-php .php PHPIniDir"C:/php5" AddDefault Charset none ServerRoot "C:/Program Files/Apache Software Foundation/Apache2.2" ServerName localhost:8080 <php.iniで> doc_root = "c:/Program Files/Apache SoftwareFoundation/Apache2.2/htdocs" extension_dir = "c:\php5\ext" mbstring.internal_encoding = UTF8 mbstring.http_output = UTF8 mbstring.substitute_character = none; output_handler = mb_output_handler 以上が変更した点です。path設定もしました。なぜapacheが起動しないのかさっぱり分りません。上記で何か間違った点、足りない点などありましたらご指導お願いします!

    • ベストアンサー
    • PHP
  • phpinfoでPHP.iniのパスが/etc/php.iniと表示さ

    phpinfoでPHP.iniのパスが/etc/php.iniと表示される お世話になります。 現在以下の環境でPHPを動作させようとしております。 windows server 2008 R2 Apache 2.2.16 (F:\apache) PHP 5.5.3 (F:\apache\php) http.confにPHPinidirをF:\apahce\phpと記述しております。 php.iniは上記ディレクトリに保存しております。 この状態でphpinfoをapacheのドキュメントルートに設置し実行すると 以下の問題が発生します。 ・phpのバージョンが5.1.6と表示される ・phpini格納ディレクトリが/etc/php.iniと表示される ・php.iniの中で変更した設定が全く反映されない 同様な問題が発生した方はいらっしゃいますでしょうか。 また、解決方法をご存じの方教えていただけますでしょうか。

    • 締切済み
    • PHP

専門家に質問してみよう