iis多php版本
⑴ 如何在IIS8.5上面部署php
進入控制面板,選擇程序和功能,打開或關閉Windows 功能,找到Internet information services,分別開啟FTP伺服器、Web管理工具和萬維網服務組件,其中萬維網服務的子組件也依次開啟,」其中最重要的開啟應用程序開發功能」,如下圖所示。
安裝結束後,重啟進行自動功能配置
在瀏覽器中打開http://localhost或者是http://127.0.0.1/,查看是否能顯示IIS8.5的多國語言的歡迎頁面:
附加一點,有的人可能出現503,這個簡單,我會有一章博客來介紹這個東西
二、下載安裝配置PHP環境
小編下載了是VC11 x64 Thread Safe 版本的壓縮包(php-5.5.4-Win32-VC11-x64),1、將其解壓到d:php目錄下(其他盤符也可以)。
選擇左側的服務和應用程序,進入Internet信息服務(IIS)管理器
3、選擇IIS功能下的」處理程序映射」雙擊進入,然後最右邊選擇」添加模塊映射」 在請求路徑輸入」*.php」,模塊選擇FastCgiMole模式,可執行文件時,文件格式可以選擇exe程序和選擇路徑:d:phpphp-cgi.exe,名稱比如php,最後確定添加模塊映射。
然後手動給網站添加默認文檔:default.php和index.php兩個文檔。
繼續對於php程序包進行下面的配置:進入d:php目錄,重命名文件php.ini-development改名為php.ini。
用記事本打開編輯php.ini文件,使用快捷鍵ctrl+F快速搜索定位,相關的date.timezone修改為date.timezone=」Asia/Shanghai」即修改當前的系統時區,同時將前面的分號」;」刪除生效。
下來修改這些地方
;extension=php_gd2.dll 改為extension=php_gd2.dll
;extension=php_mbstring.dll 改為extension=php_mbstring.dll
;extension=php_mysql.dll 改為extension=php_mysql.dll
;extension=php_mysqli.dll 改為extension=php_mysqli.dll
;extension=php_pdo_mysql.dll改為extension=php_pdo_mysql.dll
然後搜索extension_dir,修改路徑為extension_dir = 「d:phpext」 ,同時將前面的分號」;」刪除生效。,修改後保存,然後復制這個php.ini文件到C:Windows根目錄下即可。
; The directory under which PHP opens the script using /~username used only
; if nonempty.
; http://php.net/user-dir
user_dir =
; Directory in which the loadable extensions (moles) reside.
; http://php.net/extension-dir
extension_dir = "D:phpext"
; On windows:
extension_dir = "D:phpext"
php環境配置好了,現在就需要測試一下了,在建立的網站目錄wwwroot文件夾下」C:inetpubwwwroot」新建一個phpinfo.php網頁文件。
內容為:
<?php
phpinfo();
?>
然後再在IE瀏覽器中打開http://localhost/phpinfo.php,即可出現類似如下界面,即成功生效。
⑵ 如何在IIS6環境下配置5.3以上版本的PHP
使用FastCgi在IIS6來配置PHP 5.3運行環境。
1、下載PHP 5.3.X
官方下載地址:http://windows.php.net/download/
注意,一定要下載VC9 x86 Thread Safe的,文件名形式如:php-5.3.13-Win32-VC9-x86.zip
2、下載FastCGI
官方下載地址:http://www.iis.net/extensions/fastcgi
有支持IIS6和IIS5.1的32位版本和64位版本,還有支持IIS7的,因為IIS7與IIS6差別比較大,所以對於IIS7以後再介紹吧。
3、安裝FastCgi
安裝FastCgi沒什麼可介紹的,但是有一點要注意,就是系統要先安裝VC9運行庫才能正常運行,否則會報「FastCGI Error 14001 (0x800736b1)」之類的錯誤。
所以要先安裝VC9運行庫(即VISUAL C++ 2008)
Microsoft Visual C++ 2008 Redistributable Package (x86)下載地址:
http://download.microsoft.com/download/5/9/e/59e74271-2b59-49a1-b955-96b69cc34f38/vcredist_x86.exe
配置FastCGI
打開FASTCGI配置文件C:\WINDOWS\system32\inetsrv\fcgiext.ini,在最後[Types]修改為這樣的樣式
[Types]
php=PHP
[PHP]
ExePath=D:\php\php-cgi.exe
4、開始安裝PHP環境
解壓php-5.3.13-Win32-VC9-x86.zip壓縮包到 d:\php
找到PHP安裝目錄下的php.ini-proction並改名為php.ini文件,也有人使用php.ini-development。
修改PHP.ini文件
找到
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
; https://www.5wx.org
; date.timezone =
更改為
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Shanghai
找到
; On windows:
; extension_dir = "ext"
改為
; On windows:
extension_dir = "D:\php\ext"
查找extension=php_,去掉以下幾個擴展前面的分號(基本的幾項)。
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_xmlrpc.dll
查找short_open_tag = Off,改成On,讓其支持短標簽。
增加一行(非常重要)
fastcgi.impersonate = 1
開啟下面兩項
cgi.fix_pathinfo=1
cgi.force_redirect = 0
5、配置IIS
然後打開IIS管理器,網站上點擊右鍵 -> 屬性 -> 主目錄 -> 配置 -> 添加
擴展名:.php
可執行文件:C:\WINDOWS\system32\inetsrv\fcgiext.dll (根據自己的安裝路徑)
動作限制為:GET,HEAD,POST,TRACE
6、測試PHP運行
寫個php測試文件
<? phpinfo(); ?>
能看到運行界面說明就成功了!
⑶ IIS8.0怎麼配置多版本php站點
在iis管理器的根節點上,添加php的處理程序映射 ,這個會是全局默認的php版本
然後具體到某個站點,如果需要不同版本,需要在左側節點中定位到該站點,管理處理程序映射,找到繼承的php fcgi配置,點編輯,修改為需要的php版本即可。
另外 ,php.ini不要放到windows目錄中,這樣不能針對多版本使用不同配置了。
可以把php.ini放在對應的php版本的根目錄就行(php.exe所在目錄)。然後針對每個版本的php配置就可以了。擴展目錄可以直接以相對目錄的形式設置
另外 ,修改這個配置後,會在網站根目錄生成一個web.config( 如果已有,會在對應節點增加配置 ),這個web.config不要刪除或修改php配置的內容,因為這個配置是和管理器中的同步的
以上配置方法主要結合iis的配置文件,是不能一個站點配置多個版本的php的.實際項目中也很少有這樣的需求.如果需要,可以採用變通的方式解決:
如:主站/子站協同運行,採用介面互相調用(把一個站點變成多個站點)
或者使用rewrite+php-fpm的模式,匹配指定的路徑轉發給指定的php版本(同一個站點下按路徑區分)