前言:本地调试 WordPress 主题一直是使用 XAMPP 搭建本地环境,但不知道什么原因,在比较多调用的主题(如CMS类)计算机会出现卡顿现象,查看进程是 Apache 和 MySQL 这2个进程 CPU 占用其高,具体原因不知,主机环境配置我很少折腾,不懂,或许是我主机太老的问题(单核CPU)。
决定:在忍受几个月的缓慢后,决定手动搭建 Apache+PHP+MySQL 试试(也听 jiucool 说他自己也是手动搭建,相当快),经过繁琐的步骤搭建成功后,发觉貌似是比较快点,起码不会卡顿。当然,也许是 RPWT,或者是错觉。不管是啥,用着感觉 OK 就行,此篇文章是用来记录具体步骤的,原理什么的请教 Google 吧,当然你怕 Google 被逼抽风,你可以用百度搜知道的,不知道的还是找 Google 吧。
测试环境:Windows 7(其他win版本没测试,大体相同)
一、去官方下载需要的代码包、软件包
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服务的占用端口,默认为80端口,你可以根据需要配置在其他端口,Apache的安装目录你可以使用默认目录或根据需要自行选择安装目录(我安装到 D:\Apache)。
在完成apache服务的安装后,在游览器中输入http://localhost/,出现It’s work!字样,说明Apache服务安装成功了。
2. PHP
只要解压php-5.3.4-Win32-VC6-x86.zip并重名为文件夹为php到某个盘即可完成PHP安装(我是将其解压复制到D盘目录下 D:\php)
3. MySQL
点击Mysql安装程序自动安装,在此期间你可以根据需要选择Mysql数据库的安装目录(我安装到 D:\MySQL),MySQL 安装完后会启动向导,你可以先取消,下一部的配置里有说。
三、配置
1. Apache(Apache配置文件httpd.conf在Apache安装目录下的conf文件夹里面)
(1)默认Apache服务器执行WEB主程序的目录为Apache2.2/htdocs,所以当你的WEB主程序目录变更时,我们需要修改相应的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功能,当然需要index.php优先执行
找到
DirectoryIndex index.html |
修改为
DirectoryIndex index.php index.html |
(3)使Apache支持PHP
找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so |
在其下面增加如下内容(注意php的安装路径)
LoadModule php5_module "d:/php/php5apache2_2.dll" PHPIniDir "d:/php" AddType application/x-httpd-php .php .html .htm |
说明:我们在PHP目录下可以看到多个php5apache的DLL文件,由于我们使用的是Apache2.2.17,所以我们当然需要使用php5apache2_2.dll,接着指定PHP的安装目录以及执行的程序扩展名。
2. PHP(配置文件php.ini在PHP安装目录下)
(1)把php.ini-development改名为php.ini,然后用文本编辑器修改php.ini,接下来的步骤都是在php.ini进行的。
(2)找到
; On windows: ; extension_dir = "ext" |
修改为
; On windows: extension_dir = "D:/php/ext" |
表示指定PHP扩展包的具体目录,以便调用相应的DLL文件。