首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

IIS 6.0 配置 PHP 完整指南:高性能、易升級、最安全的 ISAPI 模式部署

     編輯:PHP 相關知識

雖然 LAMP 架構流行,但在需要同時支持 PHP、ASP、ASP.NET、JSP 的 Windows 共享主機環境中,IIS 6.0 (Windows Server 2003) 仍是經典選擇。本文提供一套經過生產驗證的 PHP ISAPI 配置方案,特點:首次配置後,升級 PHP 版本只需替換文件並重啟 IIS,無需修改任何配置。

前置條件

  • Windows Server 2003 + IIS 6.0 已安裝
  • 下載 PHP Windows 二進制壓縮包(Non Thread Safe 版本)
  • 管理員權限

安裝步驟

1. 部署 PHP 文件

# 解壓到系統盤根目錄(假設 C: 為系統盤)
C:\php
C:\php\dlls
C:\php\extensions
C:\php\sapi

2. 配置系統環境變量 PATH

「我的電腦」→「屬性」→「高級」→「環境變量」→「系統變量」→編輯 Path,在最前面添加:

C:\php;C:\php\dlls;C:\php\extensions;C:\php\sapi;

關鍵優勢:將 PHP 目錄加入系統 PATH,避免將 DLL 複製到 System32,升級時只需替換 C:\php 目錄。

3. 配置 php.ini

# 複製生產環境配置模板
copy C:\php\php.ini-dist C:\Windows\php.ini

# 關鍵修改項
extension_dir = "C:\php\extensions"
session.save_path = "C:\php\sessions"  # 需預先創建目錄,或使用 RAM Disk 加速

# 啟用常用擴展(去掉前面分號)
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll
extension=php_curl.dll
extension=php_xmlrpc.dll
extension=php_openssl.dll
# ... 根據項目需求啟用

4. IIS 6.0 核心配置

步驟 1:添加 Web 服務擴展

「Internet 信息服務管理器」→「Web 服務擴展」→「添加新的 Web 服務擴展」

  • 擴展名:PHP ISAPI Extension
  • 要求的文件:C:\php\sapi\php5isapi.dll (PHP 5.x)
  • 設置擴展狀態:允許

步驟 2:添加 ISAPI 篩選器

「網站」→右鍵「屬性」→「ISAPI 篩選器」→「添加」

  • 篩選器名稱:PHP
  • 可執行文件:C:\php\sapi\php5isapi.dll

步驟 3:配置應用程序映射

「網站」→「屬性」→「主目錄」→「應用程序設置」→「配置」→「應用程序擴展」→「添加」

  • 可執行文件:C:\php\sapi\php5isapi.dll
  • 擴展名:.php
  • 動作限制:HEAD,GET,POST
  • 腳本引擎:勾選
  • 檢查文件是否存在:取消勾選(允許 URL 重寫)

步驟 4:默認文檔

「文檔」→「啟用默認內容文檔」→「添加」→ index.php

步驟 5:重啟 IIS

# 命令行重啟(推薦)
iisreset /restart

驗證安裝

在網站根目錄創建 phpinfo.php:

<?php phpinfo(); ?>

瀏覽器訪問 https://your-server/phpinfo.php,顯示 PHP 配置信息即成功。

性能優化:安裝 Zend Optimizer

# 下載對應版本
ZendOptimizer-3.3.9-Windows-i386.exe

# 安裝向導中指定 php.ini 路徑:C:\Windows\php.ini
# 安裝完成後自動在 php.ini 末尾添加 Zend 配置
# 重啟 IIS 生效

核心優勢:無痛升級 PHP 版本

當需要升級 PHP(如 5.3.10 → 5.3.28,或 5.4.x 間升級)時:

  1. 下載新版 PHP 壓縮包
  2. 刪除 C:\php 目錄(或重命名備份)
  3. 解壓新版到 C:\php
  4. 重啟 IIS:iisreset

無需修改: php.ini、環境變量、IIS 映射、System32 文件。因為所有路徑指向固定的 C:\php,版本升級對上層透明。

安全加固建議

配置項建議值說明
expose_phpOff隱藏 PHP 版本信息
display_errorsOff生產環境不顯示錯誤詳情
log_errorsOn錯誤寫入日志文件
error_logC:\php\logs\php_error.log指定錯誤日志路徑
open_basedirC:\Inetpub\wwwroot;C:\php\sessions限制 PHP 可訪問目錄
disable_functionsexec,passthru,shell_exec,system,proc_open,popen禁用危險函數
session.cookie_httponly1防 XSS 竊取 Session
session.cookie_secure1 (僅 HTTPS)僅 HTTPS 傳輸 Cookie

常見問題排查

  1. 404/405 錯誤:檢查應用程序映射中「檢查文件是否存在」是否取消勾選
  2. 500 內部錯誤:查看 C:\php\logs\php_error.log 或 Windows 事件查看器
  3. 無法加載擴展:確認 extension_dir 路徑正確、DLL 文件存在、版本匹配(VC6/VC9、TS/NTS)
  4. 權限問題:確保 IUSR_ 和 IIS_WPG 對 C:\php、網站目錄、Session 目錄有讀/執行權限

遷移建議

Windows Server 2003 已停止主流支持(2015 年 7 月),IIS 6.0 也不再獲得安全更新。強烈建議規劃遷移至:

  • Windows Server 2019/2022 + IIS 10 + PHP 8.x (FastCGI):現代標準架構
  • Linux + Nginx + PHP-FPM:性能更優、生態更豐富、成本更低
  • 容器化部署:Docker + PHP-FPM + Nginx,環境一致性最佳

本文方案適用於維護舊系統的過渡期。新項目請直接採用現代技術棧,獲得長期支持與安全保障。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved