將 WordPress 從 Linux 伺服器遷移至 Windows 伺服器(例如 Windows Server + IIS) 是可行的,但需要考慮一些細節與設定差異。以下是完整的步驟和注意事項:
🔧 前置準備
-
備份網站
- 將整個 WordPress 網站(包含資料庫和檔案)完整備份。
- 使用外掛如
UpdraftPlus、All-in-One WP Migration或手動備份。
- 使用外掛如
- 將整個 WordPress 網站(包含資料庫和檔案)完整備份。
-
確認目標環境
- Windows Server 已安裝:
- IIS (Internet Information Services)
- PHP(建議使用最新穩定版)
- MySQL / MariaDB / SQLite(根據你的 WordPress 配置)
- phpMyAdmin(可選,方便管理資料庫)
- Windows Server 已安裝:
-
檢查 PHP 版本兼容性
- WordPress 官方推薦 PHP 8.0+
- Windows 上可使用 XAMPP、WAMP 或手動安裝。
📁 步驟一:導出 Linux 上的 WordPress 資料
1. 匯出 WordPress 檔案
- 通常位於
/var/www/html/your-wordpress-site - 使用 FTP 或 SSH 下載全部檔案
2. 匯出資料庫
mysqldump -u username -p database_name > backup.sql
🖥️ 步驟二:在 Windows 上配置伺服器環境
1. 安裝 IIS 和 PHP
- 打開「伺服器管理員」→ 新增角色與功能 → 啟用 IIS
- 安裝 PHP:
- 可使用 Microsoft Web Platform Installer
- 或下載 PHP for Windows
2. 配置 PHP 支援 WordPress
- 啟用必要模組(在
php.ini中取消註解):extension=mysqli extension=curl extension=mbstring extension=xml extension=intl - 設定上傳大小限制(如需):
upload_max_filesize = 64M post_max_size = 64M
📂 步驟三:部署 WordPress 到 Windows 環境
1. 將 WordPress 檔案放到 IIS 的網站根目錄
- 預設路徑為:
C:inetpubwwwrootyour-wordpress-site
2. 建立新的 MySQL 資料庫並導入 SQL 檔案
- 在 Windows 上建立新資料庫:
CREATE DATABASE wordpress; CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost'; FLUSH PRIVILEGES; - 導入 SQL 檔案:
mysql -u root -p wordpress < backup.sql
🛠️ 步驟四:調整 WordPress 設定
修改 wp-config.php
- 更新資料庫名稱、帳號、密碼等資訊:
define('DB_NAME', 'wordpress'); define('DB_USER', 'wp_user'); define('DB_PASSWORD', 'password'); define('DB_HOST', 'localhost'); // 或實際 IP
如果有網址問題(例如出現 404 或重導錯誤)
- 修改資料庫中的網站網址:
UPDATE wp_options SET option_value = replace(option_value, 'http://old-url', 'http://new-url') WHERE option_name = 'home' OR option_name = 'siteurl';
🔄 其他注意事項
| 注意事項 | 說明 |
|---|---|
| 檔案權限 | Windows 上權限較不嚴格,但仍要確保 IIS 使用者有讀取權限 |
| Rewrite 規則 | Apache 的 .htaccess 不適用於 IIS,需改用 web.config |
| 外掛相容性 | 某些外掛可能依賴 Linux 指令或函式,需測試是否正常運作 |
| 大小寫敏感 | Linux 是大小寫敏感,Windows 否,URL 可能因此出錯 |
✅ 最後測試
- 開啟瀏覽器訪問你的網站
- 登入 WordPress 後台
- 測試文章、圖片、外掛、主題等是否正常顯示
- 測試新增文章、上傳圖片等功能
📌 結語
WordPress 可以順利從 Linux 移植到 Windows,但因為環境差異(Apache vs IIS、大小寫敏感等),還是需要做一些調整。只要按照上述步驟執行,應該可以成功完成遷移。
如果你需要我幫你生成 web.config 的 Rewrite 規則或處理特定錯誤訊息,也可以告訴我!
需要我協助撰寫某部分的設定檔嗎?比如 web.config 或 wp-config.php?
CLOUD技术博