質問: ### 前提・実現したいこと Windows Server 2012 R2のIIS8の環境で、PHP6.5.29(32bit)プログラムを作成しています。 開発環境では問題なく環境構築できてシステムも正常に動いているのですが、お客様環境での32bit版PHPの導入でつまずいております。 OS(2012 R2)の何らかの設定ではないかと、色々と調査していますが、これだという回答にたどり着けていません。 アドバイスをよろしくお願い致します。 ### 現象 コマンドプロンプトから、 php-v を実行すると、(通常はバージョン情報が表示されますが、)一瞬、別画面でphpの画面が表示され、バージョン情報が表示されません。 試しに、コマンドプロンプトから、php だけで実行すると、以下のようにphpの画面が表示されます。 ![![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/0a1dc623d0d18980c725152245931113.png)](94497bf6c3d16db47663ac4e204f4e4c.png) **【追記】 32bitのPHPが動かないわけではなく、どうやら別のプロセスで実行されているような動きのようです。 正常に稼働している開発環境のコマンドプロンプトから、start php -v を実行したのと同じ挙動となっていました。 ** ### 環境の構築の手順 環境は、以下のように導入しており、開発環境ではこの手順で特に問題なく設定できています。 1「Visual Studio 2012 更新プログラム 4 の Visual C++ 再頒布可能パッケージ」の導入 vcredist_x86.exe(11.0.61030)の導入 232bit版PHPの導入 php-5.6.29-nts-Win32-VC11-x86.zipを展開し、d:\phpに導入 3php.iniを設定 php.iniは、開発環境で使っているものをコピーしていますので、記述に誤りはありません。 ### 試してみたこと 上記と同様の手順で64bitのPHPを導入しましたが、それは問題なく php -v の結果が返ってきます。
回答: ### その後のいろいろな確認でわかったこと C:\Windows\SysWOW64ディレクトリにある、cmd.exeで実行した場合は、php -v の実行は同一プロセスで処理されていました。 IISの設定で『32ビット アプリケーションの有効化』をTrueに設定後、phpinfo()で確認したところ、正常に結果が返ってきました。 コマンドプロンプトからの php -v の結果が正常に返ってこなかったので、IISもうまくいかないと思いこんでいました。 ありがとうございました。