[Server] 安裝 Apache 2.4.1 + PHP 5.3.10 + SQL Server Driver for PHP

[Server] 安裝 Apache 2.4.1 + PHP 5.3.10 + SQL Server Driver for PHP

/* 2012.2.9 Maple 測試且紀錄  

 2012.7.18 Maple 整理文件 */

安裝前的狀況說明:

安裝環境為 SERVER 2008 ( 64位元版本 ),需要連線到 SQL Server 2005,

因為舊系統已有進階的 Apache 的設定,因此升級還是採用 Apache 版本 ( 在 Windows 系統用 PHP 是建議用 IIS,據說比較穩定 )

又因 PHP 5.3 以上只提供 VC9 版本,若要使用 Apache , VC9 的 PHP 只能選擇使用 Apache 2.4,且要裝 Visual C++

 

下載安裝檔案:

1. 下載 Apache 2.4.1 及 PHP 5.3 版本的 dll 檔 ( Apache Lounge 版 ) http://www.apachelounge.com/download/

httpd-2.4.1-win32.zip                   

php5apache2_4.dll-php-5.3-win32.zip  

若是要安裝 PHP 5.4 就是選擇 php5apache2_4.dll-php-5.4-win32.zip

2012.7.18補充: 已有64位元的 Apache 2.4.2 版本可安裝

2. 下載 Visual C++ 2010 SP1 Redistributable Package 

http://www.microsoft.com/download/en/details.aspx?id=13523 ( x64版本 )

http://www.microsoft.com/download/en/details.aspx?id=8328 ( x86版本 )

備註:有可能是因為我抓的是 Apache 2.4 win32版本,所以x86的版本還是要安裝,不然安裝會失敗

3. 下載 SQL Server 連線需要的套件 

需抓取 SQL Server Driver for PHP 3.0

http://www.microsoft.com/download/en/details.aspx?id=20098

請注意網頁中列出的系統需求,會影響到PHP下載的版本

2012.7.18 補充:SQL Server Driver for PHP 3.0 已經可以支援 PHP 5.4 了

 

Microsoft SQL Server 2012 Native Client ( 在 SQL Server 2012 Feature Pack 中 )

http://www.microsoft.com/download/en/details.aspx?id=29065

往下找到 MicrosoftR SQL ServerR 2012 Native Client

X86 Package ( sqlncli.msi )
X64 Package ( sqlncli.msi )

我的系統是64位元,因此我抓64位元的

4. 下載 PHP 5.3.10 VC9 x86 Thread Safe (http://windows.php.net/download/

備註:

1. VC6 用在 Apache 2.2 版本 ,VC9 則使用到 Visual C++ 編譯,用在 IIS 或 Apache 2.4 版本

2. Server 環境建議使用 Thread Safe 版本

3. 寫此文件時,SQL Server Driver for PHP 3.0 只支援到 PHP 5.3 ,但現在( 2012.7.18 ) 已經可以支援 PHP 5.4 了

 

安裝流程

1. 安裝 Visual C++ 2010 SP1 Redistributable Package ( x64 )

點兩下執行即可

2. 安裝 Visual C++ 2010 SP1 Redistributable Package ( x86 )

點兩下執行即可

3. 安裝 Apache 2.4

A. 將 Apache 2.4 解壓縮後放置到想要放的安裝位置 ( 如 C:/xxxx/Apache2.4/ )

B. 修改 conf/httpd.conf 的設定檔

      ● 調整相關檔案位置設定為 ( 如 C:/xxxx/Apache2.4/cgi-bin/ )

         window 系統的資料夾目錄必須使用正斜線 /,反斜線 \ "可能" 會造成 Apache 無法啟動 ( 曾經為此抓了很久的 BUG... )

      ● 取消 ServerName 的註解 設定為 localhost : 80

      其他設定調整依照自己的需求改吧

      請注意:Apache 2.4 的指令有調整,會與 Apache 2.2 些微不同

C. 使用 cmd 執行安裝

     切換到 Apache安裝目錄/bin/ 底下 (如 C:/xxxx/Apache2.4/bin/ ),執行 httpd.exe -k install

     若執行失敗,請注意錯誤訊息,我遇到的都是 httpd.conf 設定有誤 ( 安裝應該有成功 ) ,無法啟動 Apache

     可採用 httpd.exe -S 檢測執行時有哪些錯誤

     另外注意 cmd 的執行權限是否足夠,cmd 執行失敗不代表 ApacheMonitor.exe 就執行失敗 ( 剛好有遇過這樣的情況 )

     備註:移除 Apache 指令改為 uninstall

D. 設定開機時自動啟動

     將 Apache安裝目錄/bin/ApacheMonitor.exe 建立捷徑,放置於 windows 開始功能表中 啟動 的資料夾中

     這樣在開機時就會自動啟動 Apache Server

4. 安裝 PHP 5.3.10

A. 安裝前請先停止 Apache Server

B. 點兩下執行安裝 PHP 5.3.10

    安裝系統可選 Apache 2.2 ( 此動作會自動修改conf/httpd.conf ) 或 不選

    可以依需求設定 Extensions 等其他安裝,將來若需要增加安裝,可再次執行此 PHP 安裝檔進行修改

C. 將下載下來的 php5apache2_4.dll-php-5.3-win32.zip 解壓縮

     把 php5apache2_4.dll 檔案複製到 PHP安裝目錄/

D. 開啟 Apache安裝目錄/conf/httpd.conf 修改PHP設定

     若安裝 PHP 時有選擇 Apache 2.2 會在最後一行看到以下設定 ( 若沒有選 就是自己補上正確的設定 )

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

PHPIniDir "PHP安裝目錄"

LoadModule php5_module "PHP安裝目錄\php5apache2_2.dll"

#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

    請修改成

PHPIniDir "PHP安裝目錄"

LoadModule php5_module "PHP安裝目錄\php5apache2_4.dll"

AddHandler application/x-httpd-php .php

 

5. 安裝 SQL Server PHP 3.0 函式庫

A. 執行安裝 ( 解壓縮 ) SQL Server Driver for PHP 3.0 ,選擇目錄為 PHP安裝目錄\ext 資料夾

     安裝完畢後會多很多檔案,請依下載的PHP安裝檔版本對照找出要載入的檔案,

     此次 PHP 安裝檔案對應適合的 DLL 檔為 php_sqlsrv_53_ts.dll

     ( 53 代表 PHP5.3 版本以上 , ts 代表 Thread Safe )

B. 開啟 PHP安裝目錄/php.ini 在檔案最後面加上

[PHP_MSSQL]

extension= php_sqlsrv_53_ts.dll

    使用方式請查看 PHP安裝目錄\ext 中產生的 SQLServerDriverForPHP.chm 說明文件

    或 http://msdn.microsoft.com/zh-tw/library/cc296161(v=SQL.90).aspx

6. 安裝 SQL Server Native Client 2012 ,且手動選擇全安裝

注意:預設安裝並沒有全安裝唷

此檔案是配合 SQL Server PHP 3.0,若沒有安裝,PHP 執行 SQL Server 連線就會出現錯誤

 

備註: Linux 版本的 SQL Server Native Client ODBC 只提供 64 位元,不提供 32 位元

http://www.microsoft.com/download/en/details.aspx?id=28160

 

以上步驟已完成安裝,建議安裝完畢後重開機 ^_^

剩下的就是依需求修改設定及搬移資料囉