日期:2014-05-16  浏览次数:20768 次

转: 手动搭建apache+php+mysql
http://zww.me/archives/25371

本地调试 WordPress 主题一直是使用 XAMPP 搭建本地环境,但不知道什么原因,在比较多调用的主题(如CMS类)计算机会出现卡顿现象,查看进程是 Apache 和 MySQL 这2个进程 CPU 占用其高,具体原因不知,主机环境配置我很少折腾,不懂,或许是我主机太老的问题(单核CPU)。

决定:在忍受几个月的缓慢后,决定手动搭建 Apache+PHP+MySQL 试试(也听 jiucool 说他自己也是手动搭建,相当快),经过繁琐的步骤搭建成功后,发觉貌似是比较快点,起码不会卡顿。当然,也许是 RPWT,或者是错觉。不管是啥,用着感觉 OK 就行,此篇文章是用来记录具体步骤的,原理什么的请教 Google 吧,当然你怕 Google 被逼抽风,你可以用百度搜知道的,不知道的还是找 Google 吧。

原文参考:http://www.leapsoul.cn/?p=695

测试环境: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文件。

(3)由于默认PHP并不支持自动连接Mysql,需开启相应的扩展库功能,比如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去掉其前面的英文分号(;),如下

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功能时,我们必须配置session文件在服务器上的保存目录,否则无法使用session,我们需要在Windows 7上新建一个可读写的目录文件夹,此目录最好独立于WEB主程序目录之外,此处我在D:\localhost目录上建立了phpsessiontmp目录,然后在 php.ini配置文件中找到

;session.save_path = "/tmp"修改为

session.save_path = "D:/localhost/phpsessiontmp"(5)配置PHP的文件上传功能

同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败,我们仍然需要在 Windows 7上建立一个可读写的目录文件夹,此处我在D:\localhost目录上建立了phpfileuploadtmp目录,然后在php.ini配置文件中找到

;upload_tmp_dir =修改为

upload_tmp_dir = "D:/localhost/phpfileuploadtmp"(6)修改date.timezone,否则在执行phpinfo时date部分会报错:Warning: phpinfo() [function.phpinfo]…

找到

;date.timezone =修改为

date.timezone = Asia/Shanghai3. MySQL

点击开始菜单下Mysql Server5.5菜单中的Mysql Server Instance Config Wizard,完成Mysql的配置向导。

(1)点击 Next> 后出现3个选项:选择Mysql服务器的类型
Developer Machine
Server Machine
D