Windows下从源码建立PHP开发环境
由于开始写博客,免不了要自己定制一下主题和插件什么的,那么一个本地的PHP开发环境是必须的,好处就不多说了,总之就是修改快捷,测试方便,避免一个小错误就让你的博客挂掉。
考虑到国内大部分人都用的Windows系统,所以打算写个Windows系统上,从源码构建整个PHP环境的教程,目标是做一个绿色,不需要安装的PHP运行环境,一键运行,再装上WordPress或者Drupal,就可以随时写你的网站了。
做过跨平台开发的程序员大概都知道,开源软件对于Windows是有一点不友好的,编译中会有比较多的问题,好在现在越来越多的软件开始使用CMake编译(这个是个好东西),情况也有所改善了。不过,今天一天折腾的结果告诉我,其实最坑爹的是官方文档啊,按那个做没几次能成功的,不过遇到问题就去Google,总能解决的。
言归正传,首先是我的编译环境:
- Windows7 64bit
- VC2010
- CMake 2.8.6
- Perl
其他的没测试也不知道。Perl我是从 http://strawberryperl.com/ 下载的,用portable版本即可,下载地址:
http://strawberryperl.com/download/5.12.3.0/strawberry-perl-5.12.3.0-portable.zip
解压到比如 E:\Softwares\strawberry-perl-5.12.3.0-portable\,我个人不太喜欢装太多不常用的软件,也不喜欢把执行路径加入系统PATH。所以,后面的教程中,需要执行perl的时候,都需要先把perl.exe 所在的路径临时加入系统PATH环境变量,方法是:
SET PATH=E:\Softwares\strawberry-perl-5.12.3.0-portable\perl\bin;%PATH%
CMake也是类似。后面就不再说明了。
编译的次序是按我的直觉来的,所以,整个过程会有反复,可能会因为加一个参数,把前面编译过的东西再编译一遍,但这样有个好处,对于学习来说,知道为什么这么做远比知道怎么做要重要。所以,用好的命令行窗口别关,后面可能还用得着,长的命令我会折行,显示好看点,不过你用的时候最好去掉折行,避免可能的问题。
- 如果你对具体繁琐的过程不感兴趣,只想得到最直接的步骤列表的话,请直接移步这里(未来的某篇博客
) - 如果你对所有的过程都不敢兴趣,只想得到我们最终完美的执行程序的话,请点这里(未来某天我会打包的
)
好了,我们一步步来,首先是Web服务器,Apache(以后可能会换成nginx,效率高一个数量级):
- Windows下编译Apache服务器
- Windows下Apache服务器的常用设置
- Windows下编译PHP
- Windows下PHP的常用设置
- Windows下编译MySQL服务器
- Windows下编译支持数据库存取的PHP的几个参数
- Windows下安装数据库管理工具phpMyAdmin
- Windows下安装WordPress
- Windows下安装Drupal
- ...
© 2012, codename::boilingbit. 版权所有. 署名-非商业性使用-相同方式共享 (by-nc-sa)
2012年02月09日 15:47
官方帮助文档和那个所谓的翻译版本都一样坑爹…..
我的环境是WIN7 X64+VS2010,照着帮助文档和网上的各种资料,各种的编译…
统统失败….
通过你的文章终于成功编译了apache2.2.20,但是怎么没有下文了呢???
期待啊!!!
2012年02月10日 12:35
谢谢支持,php和mysql的,这两天就整理一下,发出来
2012年02月10日 21:44
嗯嗯,还有个问题请教下:
我编译完后,跟网上下载的免安装版的比较了一下,少了几个文件
apr_dbd_mysql-1.dll,
apr_dbd_oracle-1.dll,
apr_dbd_pgsql-1.dll,
apr_dbd_sqlite3-1.dll,
apr_dbd_db-1.dll,
不知道这几个文件怎么编译出来的?或者在哪下载的??
2012年02月11日 15:54
这些是apache对各种数据库的客户端接口实现。是在编译apache时加上类似DBD_LIST=”oracle mysql”这样的参数编译出来的,还需要先把各种数据库sdk的路径指定一下。
后面的文章里我会提到这个,我编译的时候加上了mysql的支持,因为官方文档里提到了。但如果我们只是用到php的pdo方式存取数据库的话,这些文件很可能是不需要的,你可以试试先别编译这些,以后有问题再说。