Windows7下手动搭建Apache+PHP+MySQL方法记录
前言:本地調(diào)試 WordPress 主題一直是使用 XAMPP 搭建本地環(huán)境,但不知道什么原因,在比較多調(diào)用的主題(如CMS類)計(jì)算機(jī)會(huì)出現(xiàn)卡頓現(xiàn)象,查看進(jìn)程是 Apache 和 MySQL 這2個(gè)進(jìn)程 CPU 占用其高,具體原因不知,主機(jī)環(huán)境配置我很少折騰,不懂,或許是我主機(jī)太老的問題(單核CPU)。
決定:在忍受幾個(gè)月的緩慢后,決定手動(dòng)搭建 Apache+PHP+MySQL 試試(也聽 jiucool 說他自己也是手動(dòng)搭建,相當(dāng)快),經(jīng)過繁瑣的步驟搭建成功后,發(fā)覺貌似是比較快點(diǎn),起碼不會(huì)卡頓。當(dāng)然,也許是 RPWT,或者是錯(cuò)覺。不管是啥,用著感覺 OK 就行,此篇文章是用來記錄具體步驟的,原理什么的請(qǐng)教 Google 吧,當(dāng)然你怕 Google 被逼抽風(fēng),你可以用百度搜知道的,不知道的還是找 Google 吧。
原文參考:http://www.leapsoul.cn/?p=695
測(cè)試環(huán)境:Windows 7(其他win版本沒測(cè)試,大體相同)
一、去官方下載需要的代碼包、軟件包
1. Apache:下載地址,我下載的是 httpd-2.2.17-win32-x86-openssl-0.9.8o.msi
2. PHP:下載地址,我下載的是 php-5.3.4-Win32-VC6-x86.zip
3. MySQL:下載地址,我下載的是 mysql-5.5.8-win32.msi
4. phpMyAdmin:下載地址,我下載的是 phpMyAdmin-3.3.8.1-all-languages.7z
二、安裝、解壓
1. Apache
主要配置Network Domain、Server Name、Email地址(我依次填的是localhost、localhost、郵箱隨意)以及Apache服務(wù)的占用端口,默認(rèn)為80端口,你可以根據(jù)需要配置在其他端口,Apache的安裝目錄你可以使用默認(rèn)目錄或根據(jù)需要自行選擇安裝目錄(我安裝到 D:\Apache)。
在完成apache服務(wù)的安裝后,在游覽器中輸入http://localhost/,出現(xiàn)It’s work!字樣,說明Apache服務(wù)安裝成功了。
2. PHP
只要解壓php-5.3.4-Win32-VC6-x86.zip并重名為文件夾為php到某個(gè)盤即可完成PHP安裝(我是將其解壓復(fù)制到D盤目錄下 D:\php)
3. MySQL
點(diǎn)擊Mysql安裝程序自動(dòng)安裝,在此期間你可以根據(jù)需要選擇Mysql數(shù)據(jù)庫(kù)的安裝目錄(我安裝到 D:\MySQL),MySQL 安裝完后會(huì)啟動(dòng)向?qū)?#xff0c;你可以先取消,下一部的配置里有說。
三、配置
1. Apache(Apache配置文件httpd.conf在Apache安裝目錄下的conf文件夾里面)
(1)默認(rèn)Apache服務(wù)器執(zhí)行WEB主程序的目錄為Apache2.2/htdocs,所以當(dāng)你的WEB主程序目錄變更時(shí),我們需要修改相應(yīng)的Apache配置(我改到D:\localhost\htdocs),即用文本編輯軟件打開?httpd.conf?將
DocumentRoot "D:/Apache/htdocs"修改為
DocumentRoot "D:/localhost/htdocs"再把
<Directory "D:/Apache/htdocs">修改為
<Directory "D:/localhost/htdocs">(2)修改具體的index文件先后順序,由于配置了PHP功能,當(dāng)然需要index.php優(yōu)先執(zhí)行
找到
DirectoryIndex index.html修改為
DirectoryIndex index.php index.html(3)使Apache支持PHP
找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so在其下面增加如下內(nèi)容(注意php的安裝路徑)
LoadModule php5_module "d:/php/php5apache2_2.dll" PHPIniDir "d:/php" AddType application/x-httpd-php .php .html .htm說明:我們?cè)赑HP目錄下可以看到多個(gè)php5apache的DLL文件,由于我們使用的是Apache2.2.17,所以我們當(dāng)然需要使用php5apache2_2.dll,接著指定PHP的安裝目錄以及執(zhí)行的程序擴(kuò)展名。
2. PHP(配置文件php.ini在PHP安裝目錄下)
(1)把php.ini-development改名為php.ini,然后用文本編輯器修改php.ini,接下來的步驟都是在php.ini進(jìn)行的。
(2)找到
; On windows: ; extension_dir = "ext"修改為
; On windows: extension_dir = "D:/php/ext"表示指定PHP擴(kuò)展包的具體目錄,以便調(diào)用相應(yīng)的DLL文件。
(3)由于默認(rèn)PHP并不支持自動(dòng)連接Mysql,需開啟相應(yīng)的擴(kuò)展庫(kù)功能,比如php_mysql.dll等,即將
;extension=php_curl.dll ;extension=php_gd2.dll ;extension=php_mbstring.dll ;extension=php_mysql.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_odbc.dll ;extension=php_xmlrpc.dll去掉其前面的英文分號(hào)(;),如下
extension=php_curl.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_pdo_mysql.dll extension=php_pdo_odbc.dll extension=php_xmlrpc.dll(4)配置PHP的Session功能
在使用session功能時(shí),我們必須配置session文件在服務(wù)器上的保存目錄,否則無法使用session,我們需要在Windows 7上新建一個(gè)可讀寫的目錄文件夾,此目錄最好獨(dú)立于WEB主程序目錄之外,此處我在D:\localhost目錄上建立了phpsessiontmp目錄,然后在 php.ini配置文件中找到
;session.save_path = "/tmp"修改為
session.save_path = "D:/localhost/phpsessiontmp"(5)配置PHP的文件上傳功能
同session一樣,在使用PHP文件上傳功能時(shí),我們必須要指定一個(gè)臨時(shí)文件夾以完成文件上傳功能,否則文件上傳功能會(huì)失敗,我們?nèi)匀恍枰?Windows 7上建立一個(gè)可讀寫的目錄文件夾,此處我在D:\localhost目錄上建立了phpfileuploadtmp目錄,然后在php.ini配置文件中找到
;upload_tmp_dir =修改為
upload_tmp_dir = "D:/localhost/phpfileuploadtmp"(6)修改date.timezone,否則在執(zhí)行phpinfo時(shí)date部分會(huì)報(bào)錯(cuò):Warning: phpinfo() [function.phpinfo]…
找到
;date.timezone =修改為
date.timezone = Asia/Shanghai3. MySQL
點(diǎn)擊開始菜單下Mysql Server5.5菜單中的Mysql Server Instance Config Wizard,完成Mysql的配置向?qū)А?/p>
(1)點(diǎn)擊 Next> 后出現(xiàn)3個(gè)選項(xiàng):選擇Mysql服務(wù)器的類型
Developer Machine
Server Machine
Dedicated MySQL Machine
我選第2個(gè)“Server Machine”
(2)然后又是3個(gè)選項(xiàng):Mysql數(shù)據(jù)庫(kù)用途
Multifunctional Database
Transactional Database Only
Non-Transactional Database Only
我選第1個(gè)“Multifunctional Database”
(3)選擇Mysql數(shù)據(jù)庫(kù)的并發(fā)連接數(shù)
Decision Support (DSS)/OLAP:最大20個(gè)連接并發(fā)數(shù)
Online Transaction Processing(OLTP):最大500個(gè)并發(fā)連接數(shù)
Manual Setting:自定義
我選自定義,設(shè)置為50
(4)選擇Mysql服務(wù)的端口號(hào),一般默認(rèn)即可
(5)選擇Mysql數(shù)據(jù)庫(kù)的字符集(推薦使用UTF8,比較通用,否則容易造成亂碼。)
Standard Character Set
Best Support For Multilingualism
Manual Selected Default Character Set / Collation
我選“Manual Selected Default Character Set / Collation”,然后在?Character Set?選擇?utf8
(6)設(shè)置Mysql為Windows服務(wù)
在這里考慮開機(jī)速度的問題,我將自動(dòng)登錄Mysql服務(wù)取消了,一般你可以選擇此選項(xiàng),如果沒有選,你可以使用net start mysql啟動(dòng)Mysql服務(wù)(停止就是net stop mysql)。
我的選擇是“Install AS Windows Service”和“Include Bin Directory in Windows PATH”勾選,“Launch the MySQL Server automatically”去掉勾選
(7)設(shè)置Mysql數(shù)據(jù)庫(kù)root用戶的密碼
(8)執(zhí)行Mysql服務(wù)配置選項(xiàng)
Mysql數(shù)據(jù)庫(kù)的配置文件保存在D:\MySQL\my.ini,如果今后有什么變動(dòng),你可以修改此文件。
四、測(cè)試
0. 重新啟動(dòng) Apache(系統(tǒng)托盤點(diǎn)擊 Apache 圖標(biāo)》Apache 2.2》Restart)
1. 在 D:\localhost\htdocs 建立 index.php,輸入如下內(nèi)容
<?php phpinfo(); ?>然后在游覽器中輸入http://localhost,就可以看到PHP的具體配置頁(yè)面了
2. 修改 index.php 為如下內(nèi)容
<?php $connect=mysql_connect("127.0.0.1","root","你的mysql數(shù)據(jù)庫(kù)密碼"); if(!$connect) echo "Mysql Connect Error!"; else echo "MySQL OK!"; mysql_close(); ?>然后在游覽器中輸入http://localhost/,看到:“MySQL OK!”字樣就說明PHP連接Mysql就算成功了。
五、安裝數(shù)據(jù)庫(kù)管理 phpMyAdmin
把下載回來的 phpMyAdmin-3.3.8.1-all-languages.7z 解壓到 D:\localhost\htdocs 目錄下,重新命名為 phpmyadmin,這樣你就可以用?http://localhost/phpmyadmin?進(jìn)入 phpmyadmin 管理界面了
這樣 Apache+PHP+MySQL 環(huán)境就搭建完畢,你可以正常安裝 WordPress了,不過要完美還要繼續(xù)看下面的第六步。
六、問題與解決
1. 在Windows 7中PHP連接Mysql時(shí)默認(rèn)只能使用IP地址連接Mysql,而無法使用localhost連接Mysql,解決方法為打開C:\Windows\System32\drivers\etc下的hosts文件,將
# ? 127.0.0.1 ? ? ? localhost前面的注釋 # 去掉
2. 在使用phpmyadmin導(dǎo)入數(shù)據(jù)庫(kù)時(shí),如果你的數(shù)據(jù)庫(kù)大于2M(phpmyadmin默認(rèn)為2M),那么會(huì)導(dǎo)入錯(cuò)誤,這時(shí)我們要更改配置,打開 php.ini,那么更改如下幾處:
file_uploads??? ? on(是否允許通過HTTP上傳文件的開關(guān)。默認(rèn)為ON即是開)
upload_tmp_dir? --(文件上傳至服務(wù)器上存儲(chǔ)臨時(shí)文件的地方,如果沒指定就會(huì)用系統(tǒng)默認(rèn)的臨時(shí)文件夾,上面步驟已經(jīng)設(shè)置了)
upload_max_filesize ? 30m(望文生意,即允許上傳文件大小的最大值。默認(rèn)為2M)
post_max_size ? 50m(指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認(rèn)為8M)
max_execution_time ? 300(每個(gè)PHP頁(yè)面運(yùn)行的最大時(shí)間值(秒),默認(rèn)30秒)
max_input_time?????? ? 300 (每個(gè)PHP頁(yè)面接收數(shù)據(jù)所需的最大時(shí)間,默認(rèn)60秒)
memory_limit??????? ? 128m(每個(gè)PHP頁(yè)面所吃掉的最大內(nèi)存,默認(rèn)8M,如果你機(jī)子的內(nèi)存足夠大的話,還可以設(shè)置大點(diǎn)兒)
3. 安裝好 WordPress 后,如果你重新定義了永久鏈接,你會(huì)發(fā)現(xiàn)無效,那么繼續(xù)如下操作:
打開 httpd.conf
1. 找到 LoadModule rewrite_module 去掉前面的 #
2. AllowOverride None 改為 AllowOverride All
保存后重啟 Apache
七、一些個(gè)人喜好
1. 默認(rèn)下 Apache 是跟隨 Windows 一起啟動(dòng)的,你可以在“菜單》運(yùn)行》msconfig》啟動(dòng)》找到 Apache HTTP Server去掉前面的勾
補(bǔ)充:這樣還不夠,還要去掉Apache2.2服務(wù),右鍵“計(jì)算機(jī)”》“管理”》“服務(wù)和應(yīng)用程序”》“服務(wù)”,找到“Apache2.2”這個(gè)名稱的服務(wù),把啟動(dòng)類型選為“手動(dòng)”
2. 如果你安裝我上面所說的去掉了 MySQL 的自動(dòng)啟動(dòng),老是用命令啟動(dòng)/關(guān)閉 MySQL 會(huì)很麻煩,那么你可以寫批處理(bat)解決
新建一個(gè)文本文件,內(nèi)容如下:
net start mysql
然后重新命名為 MySQL-Start.bat(注意擴(kuò)展名),把這個(gè)文件放到桌面直接點(diǎn)擊就啟動(dòng) MySQL 了。
同理新建一個(gè)文本文件,內(nèi)容如下:
net stop mysql
然后重新命名為 MySQL-Stop.bat(注意擴(kuò)展名),把這個(gè)文件放到桌面直接點(diǎn)擊就關(guān)閉 MySQL 了。
終于寫完了,雖然部分內(nèi)容來自文章開頭的“原文參考”,而且我還沒貼圖,都感覺很累,教程什么的最累人了。
另外:有些步驟我是憑記憶敲的,不知道有沒有錯(cuò)誤,如果有朋友根據(jù)我這篇文章折騰,有什么問題在評(píng)論里提出并討論。
?
嚓!
轉(zhuǎn)載于:https://www.cnblogs.com/fhefh/archive/2011/04/01/2002369.html
總結(jié)
以上是生活随笔為你收集整理的Windows7下手动搭建Apache+PHP+MySQL方法记录的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux常用命令(第二版) --文件管
- 下一篇: ASP用DSN连接数sql数据库