E:\Apache2E:\PHPE:\MySQLE:\Program Files\Zend(最後安裝)建議暫存目錄獨立分區(如 D:\Temp)提升效能。
LoadModule php5_module "E:/PHP/php5apache2.dll"
AddType application/x-httpd-php .php
DocumentRoot "E:/Apache2/www"
<Directory "E:/Apache2/www">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
DirectoryIndex index.html index.php
AddDefaultCharset GB2312
extension_dir = "E:/PHP/ext"
extension=php_mysql.dll
extension=php_gd2.dll
extension=php_mbstring.dll
file_uploads = On
upload_tmp_dir = "D:/Temp"
upload_max_filesize = 20M
post_max_size = 20M
memory_limit = 20M
mysql.default_host = localhost
mysql.default_user = root
mysql.default_password =
mysql.default_port = 3306
關鍵:將 E:\PHP\libmysql.dll、libmysqli.dll 複製到 C:\Windows\System32,否則 MySQL 擴充無法載入。
phpMyAdmin 報錯:#1251 - Client does not support authentication protocol
原因:MySQL 5.0 新式密碼雜湊,舊版 libmysql.dll 不支援。
解決:以 OLD_PASSWORD() 重設密碼:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd')
-> WHERE Host = 'localhost' AND User = 'root';
mysql> FLUSH PRIVILEGES;
或升級 PHP 使用 mysqli + mysqlnd 原生驅動。
https://localhost/ → Apache 歡迎頁https://localhost/info.php (<?php phpinfo(); ?>) → 確認 PHP、MySQL、GD 模組https://localhost/phpmyadmin/ → 登入無錯誤| 現象 | 解決 |
|---|---|
| Apache 無法啟動 | 80 埠衝突(IIS、Skype),netstat -an 排查 |
| PHP 模組未載入 | 檢查 LoadModule 路徑、php5apache2.dll 存在、重啟 Apache |
| MySQL 連線失敗 | 服務未啟動、libmysql.dll 未在 System32、防火牆阻擋 3306 |
| 中文亂碼 | 資料庫/表/欄位/連線字元集統一設定 utf8 或 gb2312 |