1 min read

php開發建置

環境

  • server: windows 2008 R2
  • client: windows 7
  • database: MSSQL 2008 R2 Express

開發工具

ps. 本文件僅測試於IIS7, php5.3.10, eclipse-PDT 3.0.2, subclipse 1.8.x, XDebug 2.1.3

建置步驟

安裝IIS7 + php-fastcgi

  1. 安裝IIS7
    • 需安裝cgi
  2. 安裝php5.3
    • 下載VC9 x86 Non Thread Safe ZIP
    • 解壓縮到*c:
  3. 安裝Microsoft Visual C++ 2008 Redistributable Package (x86)
  4. 測試以下的命令碼: c:.exe -i ps. 如出現side-by-side effect的錯誤訊息表示步驟3有問題
  5. 設定php.ini
    • 複製php.ini-development至php.ini
    • 修改以下內容: fastcgi.impersonate = 1 cgi.fix_pathinfo = 1 date.timezone = “Asia/Taipei”
  6. 設定fast-cgi Mapping Handler
  7. c:建立phpinfo.php*並修改內容為:
  8. 打開*http:///phpinfo.php須出現phpinfo畫面
    • 如出現500可能是步驟5的date.timezone未設定成功

安裝eclipse-PDT和svn

  1. 安裝jre, 雖然我不喜歡Oracle, 但這只是為了方便… Sun Java
  2. 下載eclipse-PDT並解壓縮至c:-php ps. jre和eclipse-PDT必須同時為x86或x64
  3. 執行c:-php.exe
  4. 安裝subclipse
    • Help -> Install New Software
    • 在Work with:欄位輸入http://subclipse.tigris.org/update_1.8.x
    • 勾選Subclipse, SVNKit; 不勾選Subclipse底下的Subclipse Integration for Mylyn 3.x (Optional)

匯入既有的SVN Repository

  1. 於eclipse內打開SVN repository Exploring Perspective
  2. 於SVN Repositories內點右鍵, 選New
  3. 輸入svn repository的URL

安裝XDebug

  1. 下載Xdebug Windows Binary(VC9 32bit)
  2. 將下載的.dll複製至*c:
  3. 修改php.ini,新增以下內容 [xdebug] zend_extension=c:_xdebug-2.1.3-5.3-vc9-nts.dll
  4. 於命令列輸入c:\php\php.exe -m檢查輸出內有無xdebug

設定遠端除錯環境

  1. 修改要進行除錯的eclipse設定如下:
    • 開啟PHP專案
    • Windows -> Preferences -> PHP -> Debug 將PHP Debugger從Zend Debugger改成Xdebug後,點選右邊的Configure…
    • 於Installed Debuggers內選Xdebug後點右邊的Configure
    • Accept remote seesion (JIT) 從 off 改成 any 後點OK
    • 點Apply
  2. 設定要開網頁的瀏覽器(僅以Firefox為例)
  3. 設定php.ini: [xdebug] zend_extension=c:_xdebug-2.1.3-5.3-vc9-nts.dll xdebug.remote_enable=On xdebug.remote_handler=“dbgp” xdebug.remote_mode=“req” xdebug.remote_port=9000 xdebug.remote_host=“YOUR.IP.GOES.HERE” xdebug.remote_log=/path/to/xdebug_remote_log

設定php和MSSQL的連線

ini php.ini ;... extension=c:\php\ext\php_pdo_sqlsrv_53_nts_vc9.dll ;...

  • 檢查能否讀取
c:\php\php -m

看看有無pdo_sqlsrv

ps. 由於我本來就已經有VC9版本的ODBC Client、pdo_sqlsrv VC9版本,所以我安裝這些版本沒問題,但是在安裝新下載的3.0版本卻問題一堆。等到之後我有和它奮鬥後再把心得Po上來吧。

參考網頁