作戰計劃: PHP + MS SQL 由單機移至 Hyper-V 狀況出現: PHP 安裝完成, 但出現資料庫連結錯誤 |
接到任務後,騎兵就快手快腳下載 PHP 專用的 Appserv 開始安裝,過程相當簡單,依照執行步驟下一步下一步就完成了,請見下圖作為參考。
接著啟動 Apache 進行測試。哦,代誌發生了,出現錯誤訊息。看來是資料庫問題,騎兵我直接判讀為資料庫連結錯誤,這小角色應該容易解決。
錯誤訊息: Fatal error: Call to undefined function mssql_connect() in C:\AppServ\….
過了二天,小角色解決沒?喔…還沒哦,在 Google 大神裡看遍中外高手之祕方、旁門左道,仍不得其門而入。只能再檢查,看看有無蛛絲馬跡,網路上眾人的意見大部份都是 dll 檔案的問題,ntwdblib.dll 與 php_mssql.dll,試了再試,將 .dll 複製到 windows\system32 之下仍是無解,錯誤訊息仍有如惡鬼上身賴著不走。但就在此時騎兵我透過狙擊鏡上的十字標記瞄到 System32 目錄之下竟然有個 SysWOW64,哦~哦~哦~ 這台主機是 64 位元,那就將 ntwdblib.dll 與 php_mssql.dll 複製到此目錄下之看看,再重啟 Apache 服務,打開 PHP 網頁,馬上天空就傳來陣陣悠揚的聲音,噹 噹 噹 噹,下課收工。
* 作戰方針: windows 32 要 copy 到 C:\windows\system32, 但 64 bit 則要 copy 到 C:\windows\SysWOW64
* 最佳參考來源:
http://www.ptt.cc/bbs/PHP/M.1284709077.A.7C7.html
http://www.appservnetwork.com/