apache_2.0.53-win32-x86-no_ssl.exe 安裝至 D:/Apachehttps://localhost 或 https://localhost:8080,出現 Apache 羽毛圖標即成功現象:啟動報錯 OS 10048: make_sock: could not bind to address 0.0.0.0:80
原因:IIS 佔用 80 端口
方案:
IIS Admin ServiceD:/Apache2/conf/httpd.conf 中 Listen 80 為 Listen 8080,訪問時加端口 https://localhost:8080php-5.2.1-Win32.zip 至 D:/PHPphp.ini-dist → php.ini,複製到 C:/Windowsphp5ts.dll、libmysql.dll 到 C:/Windows/System32# 1. 默認編碼 AddDefaultCharset GB2312 # 2. 站點根目錄(可自定義) DocumentRoot "G:/Web Project" # 3. 默認首頁文件 DirectoryIndex index.html index.html.var index.htm index.php # === 選擇安裝模式(二選一) === # 【模式一:模塊化模式】推薦,性能更好 LoadModule php5_module d:/php/php5apache2.dll AddType application/x-httpd-php .php # 【模式二:CGI 模式】兼容性好,性能稍弱 ScriptAlias /php/ "d:/php/" AddType application/x-httpd-php .php Action application/x-httpd-php "/php/php-cgi.exe"
php5apache2.dll 僅適用 Apache 2.0.x;Apache 2.2+ 需 php5apache2_2.dll,否則報 Cannot load ... php5apache2.dll在 Web 根目錄創建 test.php:
<?php phpinfo(); ?>
重啟 Apache,瀏覽器訪問 https://localhost/test.php,顯示 PHP 信息頁面即成功。
/usr/local/php/bin/php -f test.php
| 模式 | 原理 | 優點 | 缺點 |
|---|---|---|---|
| 模塊化 | PHP 作為 Apache 模塊常駐內存 | 無進程創建開銷,響應快 | Apache 進程體積大,內存佔用高 |
| CGI | 每請求啟動獨立 php-cgi.exe 進程 | 隔離性好,不影響主進程 | 頻繁 fork 消耗大,高併發性能差 |
| FastCGI | 常駐進程池,管理器調度 | 兼具隔離與性能,現代標準 | 配置稍複雜 |