構成環境は以下の通りです。
Win2003SP2+IIS6+php5.26+mysql5.0.51a+zend3.3a+PhpMyAdmin2.11.7.1 PHP 実行モード: isapi。 MySQL は手動でインストールされます。
「無効なメモリ位置アクセス」エラーの解決策と手順について: (部分的に無効なデバッグ手順はスキップされます...)
1. IISのエラー表示をオンにしますが、エラーの原因は見つかりませんでした。
2. IIS 拡張機能、ISAPI、php.ini、および Mysql の設定と、対応するインストール ディレクトリの ACL 権限がすべて正しいことを確認します。
3. IIS プロセスをリサイクルしても、「無効なメモリ位置へのアクセス」エラーが表示されます....
4. php.ini で display_startup_errors = On をオンにすると、最終的に問題が発見されます... (注: php.ini で display_startup_errors がオンになっている場合、php にエラーがある場合はプロンプトが表示され、イベント ビューアのレコードになります。display_startup_errors = Off に設定すると、プロンプトは表示されません)
5. エラー分析
6. 解決策も非常に簡単です。php_sqlite.dll が php_pdo.dll ファイルにロードされていないため、phpinfo() 関数を実行すると、メモリ位置へのアクセスが無効であるというメッセージが表示されます。 php.ini 設定ファイルを見つけて、「;extension=php_pdo.dll」、extension=php_sqlite.dll の前のセミコロンを削除します
その後、IIS アプリケーション プール プロセスをリサイクルすると、問題は完全に解決されます。
IIS を再起動するだけです。
システムの安定性を維持するために、Windows 2003 では、システム自体が占有しているメモリ アドレスへのアクセスを許可しません (ブルー スクリーンを防ぐため)。プログラムがアクセスしようとするとブロックされ、上記のプロンプトが表示されます。これは通常、ソフトウェアが正しくインストールされていないことが原因です。