XAMPP 安裝設定說明筆記(windows)
XAMPP是完全免費且易於安裝的Apache發行版本,其中包含MySQL、PHP和Perl。XAMPP開放源碼套件的設置讓安裝和使用出奇容易。
XAMPP Apache + MySQL + PHP + Perl
下載安裝檔:https://www.apachefriends.org/zh_tw/download.html
Windows 2008, 2012, Vista, 7, 8 (Important: XP or 2003 not supported)
啟動 Apache及Mysql
如果在啟動Apache時遇到:
[Apache] Problem detected!
[Apache] Port 80 in use by "Unable to open process" with PID 4!
[Apache] Apache WILL NOT start without the configured ports free!
[Apache] You need to uninstall/disable/reconfigure the blocking application
[Apache] or reconfigure Apache and the Control Panel to listen on a different port
非常有可能是你的iis正在啟用中,請將它停用,就能正常啟動Apache了!
XAMPP更改MySQL密碼
使用xampp時,MySQL密碼預設是沒有密碼,很危險的!趕快來加上去
-
- 輸入http://localhost/phpmyadmin/
- 使用者帳號>編輯權限
- 更改密碼>輸入「密碼」及「確認密碼」,按「執行」
- 按瀏覽器的重新整理,會出現無法登入。(若能正常登入則跳過以下步驟)
- 修改 xampp\phpMyAdmin\config.inc.php
將$cfg['Servers'][$i]['auth_type'] = 'config';改成$cfg['Servers'][$i]['auth_type'] = 'http';,存檔。 - 重啟XAMPP
- 按瀏覽器的重新整理,輸入帳號、密碼後按確定,就可以進入到MySQL了。
XAMPP首頁 http://127.0.0.1/xampp/index.php
設定127.0.0.1為XAMPP首頁
編輯 \xampp\apache\conf\httpd.conf
<VirtualHost *:80>
ServerName 127.0.0.1
DocumentRoot "E:/xampp/htdocs/"
</VirtualHost>
之後才開始增加其他網站資料
修改Apache日誌輸出格式
修改Apache的默認日誌輸出方式,是為了避免access日誌文件過大,或者修改為Apache的輸出格式為我們想要的格式。
例如,我們只關注其中某項有用的信息,其他項分析上用不到,我們就可以把該項自定義時,直接去掉或者我們根本用不到日誌功能,可以直接將其關掉。
具體操作,可以通過打開httpd.conf文件,找到LogFormat項,就於自定義日誌的輸出內容格式;CustomLog用於修改日誌的輪詢格式。例如我們想access一旦達到100M就輪詢,可以如下做:
#CustomLog "logs/access.log" common //註釋掉默認的日誌記錄方式
CustomLog "|e:/xampp/apache/bin/rotatelogs.exe e:/xampp/apache/logs/access.log-%m-%d 86400" common //定製的日誌記錄方式一天一份
另外 error.log 也可比照處理
多站點日誌輸出格式
我們可以設定每個網站可以有自己的access.log和error.log,記得先建立log要放的目錄。
<VirtualHost *:80>
ServerName www.yourname.com.tw
DocumentRoot "E:/xampp/htdocs/web/yourname"
CustomLog "|e:/xampp/apache/bin/rotatelogs.exe e:/xampp/apache/logs/yourname/access.log-%m-%d 86400" common
ErrorLog "|e:/xampp/apache/bin/rotatelogs.exe e:/xampp/apache/logs/yourname/error.log-%m-%d 86400"
</VirtualHost>
<VirtualHost *:80>
ServerName www.yourname2.com.tw
DocumentRoot "E:/xampp/htdocs/web/yourname2"
CustomLog "|e:/xampp/apache/bin/rotatelogs.exe e:/xampp/apache/logs/yourname2/access.log-%m-%d 86400" common
ErrorLog "|e:/xampp/apache/bin/rotatelogs.exe e:/xampp/apache/logs/yourname2/error.log-%m-%d 86400"
</VirtualHost>
安裝WP
1.將WP安裝檔案放在htdocs資料夾中的網站目錄(ex:E:\xampp\htdocs\web\xxx)內
2.利用phpmyadmin建立資料庫
3.設定windows防火牆,開放port 80
4.最後進入http://127.0.0.1/web/xxx,開始進行安裝
到這邊為止,網站已經可以使用了,如果網站要對外記得再去設定DNS和更改網站網址
siteurl http://www.yourname.com
home http://www.yourname.com
下面介紹的是一些進階設定:
將Apache、Mysql 設為服務於開機時自動啟動
xampp下設置不顯示php錯誤提示
在 xampp/php/php.ini 裡設置display_errors = Off
XAMPP修改Apache連線數
編輯 \xampp\apache\conf\httpd.conf
# Server-pool management (MPM specific)
Include conf/extra/httpd-mpm.conf
編輯 \xampp\apache\conf\extra\httpd-mpm.conf
將 ThreadsPerChild 的數字改大一點,可增加可處理的連線數
MaxConnectionsPerChild 代表子進程的最大連接數,當達到設置值以後,Apache就會結束當前的子進程,釋放內存,再開啟新的子進程
<IfModule mpm_winnt_module>
ThreadsPerChild 500
MaxConnectionsPerChild 10000
</IfModule>
重新啟動apache服務即可生效
Maximum PHP Execution Time Exceeded
遇到以上的問題,解決方式
編輯php.ini,搜尋
1 | max_execution_time |
將數值改為120
限制檔案上傳大小
編輯php.ini,搜尋
1 | post_max_size |
和
1 | upload_max_filesize |
,調整數值。
關於CHMOD
1 | 因為環境是在Windows下,所以無法設定CHMOD<br /> |
一鍵重啟restart XAMPP
重啟XAMPP,必須透過控制面板按stop再按start
或許會覺得麻煩,我們可以製做一個bat批次檔
在\xampp 複製 apache_start.bat 並更名為 apache_restart.bat
找到 apache\bin\httpd.exe
變更為 apache\bin\httpd.exe -k restart
儲存,搞定!
設定瀏覽器快取 Leverage browser caching
編輯 httpd.conf
LoadModule expires_module modules/mod_expires.so
詳細操作請看這篇
sendmail寄信
設定\xampp\sendmail\sendmail.ini
詳細操作請看這篇
The Program Can’t Start Because Api-Ms-Win-Crt-Runtime-L1-1-0.Dll Is Missing
解決方式:請更新您的作業系統到最新版本。
Error: MySQL shutdown unexpectedly
編輯my.ini,檢查/xampp/路徑,更換為 E:/xampp/
PHP Fatal error: Out of memory
這個問題發生在server2012 php7.0,找了好久,增加記憶體、網站工作階段似乎都無效
後來更新網站所有佈景主題及外掛,發生的頻率有下降很多,偶爾還是會出現...
升級HTTP/2
HTTP/2讓用戶端能以較少的連接數從伺服器端取得資料,大幅增加網路傳輸速度。
網站必須先有SSL憑證
編輯httpd.conf
LoadModule http2_module /usr/lib/apache2/modules/mod_http2.so
編輯httpd-ssl.conf,在需要開啟http/2的站點加入Protocols h2 h2c http/1.1
<VirtualHost x.x.x.x:443 >
Protocols h2 h2c http/1.1
...
...
</VirtualHost>
其他相關設定:Xampp啟用PHP OpenSSL寄信服務
發表評論
想要留言嗎?歡迎歡迎!