---
# System prepended metadata

title: XAMPP疑難雜症
tags: [xampp]

---

# XAMPP疑難雜症
###### tags: `xampp`

## 無法啟動

### 確認Port是否衝突

確認apache、mysql的port是否被佔用了
解決佔用的程式或是換port

### 找不到問題怎麼辦
找出問題的的萬用方法，
用命令提示字元/終端機，
執行以下程式(什麼無法啟動就執行什麼，不一定要全部執行)，
看出現什麼錯誤或警告就解決他
xampp\test_php.bat
xampp\apache_start.bat
xampp\mysql_start.bat

![](https://i.imgur.com/4mjLvr9.png)
比如說像我目前的狀況，
mysql正常執行就不測試了，
前兩個執行後發現
vc++ 2017找不到，那就google一下怎麼安裝vc++2017
不過php可正常執行，先不管她，後續再補裝就好

httpd-vhosts.conf第49行出錯，
導致xampp的apache無法啟動，
該行是設定憑證，
後來發現是我憑證忘了移植過去導致。




## XMAPP更新

1. 先備份
1. 資料庫轉移

最偷懶的是從舊的直接複製 mysql/data過去取代新的
如果無法啟動，就用匯出匯入最保險

1. 網站複製過去
通常位於xampp/htdocs
3. 設定轉移

如果發現好像有漏設定

個人會用WinMerge這套免費工具
來比對幾個常用的設定檔新舊差異，
確保以前調整的設定都有移植過去
(沒印象自己動過什麼就全部比對，只是我常用的就這幾個)
- xampp\apache\conf\httpd.conf
- xampp\apache\conf\openssl.cnf
- xampp\apache\conf\extra\httpd-ssl.conf
- xampp\apache\conf\extra\httpd-vhosts.conf
- xampp\apache\conf\extra\httpd-xampp.conf
- xampp\php\php.ini

如果發現無法啟動，
可參考[這個](https://hackmd.io/ZyWXqF4ZR7usrF7p9QnOKQ#%E6%89%BE%E4%B8%8D%E5%88%B0%E5%95%8F%E9%A1%8C%E6%80%8E%E9%BA%BC%E8%BE%A6)