WordPress 安裝過程中存取 wp-admin/install.php 出現亂碼(如「鎮ㄧ殑 PHP 浼間箮娌℃湁瀹夎杩愯 WordPress 蹇呴』鐨 MySQL 鎷撳睍」),實為 PHP 缺少 mysql 擴充套件導致資料庫連線失敗,錯誤訊息以錯誤編碼顯示產生亂碼。
mysql 擴充套件(mysql_connect 等函數)mysql,5.7+ 移除,改用 mysqli 或 PDO_MySQLphp.ini 僅載入 mysqli 而無 mysql,WordPress 無法連線資料庫php -v 或 phpinfo()php/ext 目錄尋找 php_mysql.dllphp_mysql.dll 至 PHP 根目錄(某些環境需要)php.ini,取消註解:extension=php_mysql.dllhttpd -k restart 或服務管理器重啟PHP 7.0 完全移除 mysql 擴充套件,舊版 WordPress 無法直接執行。建議採用以下方案:
| 方案 | 適用場景 | 操作步驟 |
|---|---|---|
| 升級 WordPress | 最推薦,長期維護 | 備份資料庫與檔案 → 下載最新 WP → 替換核心檔案 → 執行升級腳本 |
| 使用 mysqli 兼容層 | 暫時無法升級 WP | 安裝 wp-mysqli-db-driver 外掛或修改 wp-db.php 使用 mysqli |
| Docker 容器化 | 環境隔離、版本鎖定 | 使用官方 wordpress:php7.4-apache 或 php:5.6-apache 映像 |
| PHP 版本切換 | 多專案共存伺服器 | 使用 php-fpm 不同 pool、或 update-alternatives 切換 CLI 版本 |
-- 建立資料庫時指定 utf8mb4(支援 Emoji)
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- wp-config.php 確認設定
define('DB_CHARSET', 'utf8mb4');
define('DB_COLLATE', 'utf8mb4_unicode_ci');