讓 Windows Server 2016 的 IIS 10 支援 PHP

URL Link //n.sfs.tw/12843

2018-10-23 21:09:51 By 杜子

因為在研究如何利用 PHP 與 Windows AD 進行 LDAPS 連線,外部的 Linux 或 FreeBSD 跑 Apache + PHP 的 Server 都無法成功,

所以決定讓 Windows Server 2016 本身的 IIS 也能支援 PHP , 直接在本機測試.

最後結果是用 port 636 進行 ldap_connect  沒問題, 但是不管如何就是無法 bind 成功.

算了, 先把如何讓 IIS 支援 PHP 記錄一下。

 

這一次我是使用 Web Platform Installer 來完成,Web Platform Installer 簡稱 Web PI , 是微軟提供的一款建置網站平臺的整合式軟體,除了提供微軟的工具,也支援建置WordPress部格格框架、Moodle教學平臺、Drupal等常見開源平臺,微軟真是佛心來著,省掉了以往得一大堆繁複的步驟才能達成的功能。

 

1.直接連上微軟網站 https://www.microsoft.com/web/downloads/platform.aspx 進行安裝

 

2. 下一個畫面, 當然直接是按"執行"

3. 官方網站目前提供下載的是 5.0 版, 而且是英文版

4.安裝中...

5.安裝完成

6.安裝完畢, 一執行系統就自動檢查更新, 就告訴我可以進行 5.1 版的更新, 真奇怪, 剛剛在網站上下載的竟然不是最新的, 不過, 更新完會變成中文版的.

 

7. 更新完畢再次執行, 由於目標是讓 IIS 可支援 PHP , 所以選擇上方"產品"類, 然後左側選擇"架構" , 畫面往下捲動, 即可找到 PHP 7.2.7 , 如下圖

選擇完畢, 按下"安裝"

8. 安裝中, 會自動安裝一些必要元件, 下面當然是要按"我接受"

9. 安裝中....

 

10. 安裝完畢, 在 IIS 的根目錄簡單寫個 phpinfo 程式看一下安裝情況

<?php
phpinfo();
?>

 

可以看到確實把 PHP 7.2.7 裝上去了

11. 設定 php.ini , 位置是在 C:\Program Files\PHP\v7.2 這個目錄裡面

剛剛檢查 phpinfo  , 發現 php_ldap.dll 這個 extension 預設並沒有載入,
但是, 檢查 C:\Program Files\PHP\v7.2\ext 卻發現其實安裝的時候都有裝進去了,
所以要自己手動加進來
用記事本開啟 php.ini , 把它加上去, 如下圖, 然後 ldap 相關指令就可以使用了。