環境:Win2003 SP2 + IIS6 + PHP 5.2.6 (ISAPI) + MySQL 5.0.51a + Zend 3.3a。現象:頁面訪問拋出「內存位置訪問無效」,IIS 日誌無明顯錯誤。
php.ini 中 display_startup_errors = OnWarning: Cannot load module 'SQLite' because required module 'pdo' is not loaded
php.ini 中啟用了 extension=php_sqlite.dll,但 extension=php_pdo.dll 被註釋。SQLite 擴展依賴 PDO 基礎模塊,依賴缺失導致模塊加載失敗,觸發底層內存訪問異常。
; php.ini 中修改 extension=php_pdo.dll ; 去掉前面分號啟用 extension=php_sqlite.dll ; 保持啟用
修改後回收 IIS 應用程序池,問題徹底解決。
display_startup_errors = On 能暴露模塊加載階段錯誤,排查疑難雜症必開