在WIN32下搭建PHP开发环境,部署HDWiki

最近在项目中要用到一个百科的功能(像百度百科,维基百科),以前用的是HDWiki开源软件。但是并没有实现和我们现有网站实现登录/登出同步的问题。而且人家的开源软件是用PHP开发的,再看看自己所开发的项目,主要包括了Django和JAVA两大模块。苦思冥想,是用单点登录呢?还是用其他的方法呢?

自己开发的是Django模块,虽然以前搞过一点JAVA,当然JAVA端是不存在压力了。但是互动百科(HDWiki)用的是PHP开发的,再想想自己,对PHP表示完全不懂。怎么办呢?去学PHP?搞单点登录?

面临着项目上线的压力,在加上以后可能还有很多开源功能需要加进来,譬如说加一个开源的内部论坛之内的,不知不觉,又对Discuz研究了一番,最终找到了问题的突破口——UCenter.不得不佩服开源软件的优秀呀,在此表示感谢了。

用UCenter,的确会使项目开发周期变得短很多,而且也能临时的解决登录、登录的问题。另外呢,它的登录同步机制也比较简单,再这里就不赘述了,需要详细了解的朋友可以猛击本文最后链接地址。

几经周折,还是决定在本地搭建一个PHP环境,一方面,好做调试,另一方面,在本地搭建成功了,在服务器也好部署。公司没有高人的指点,一切都只能靠自己,对于一个PHP没如果门的孩纸,面对现在的问题,就像一只饥饿很久的狼狗,遇到了一块肥肉,却不知道从何下口。

通过各种查资料,各种尝试,最终还是将开源项目在本地部署成功了。下面分享给大家,欢迎多提宝贵意见。

概述:
版本:HDWiki-v5.1UTF8-20121102,PHP5.3.18 ,phpMyAdmin-3.5.2.2,Apache2.2,MySql5.5.27

1,安装Mysql,略
2,安装PHP:
(1)下载PHP5.3.18 win32版本; http://windows.php.net/download/#php-5.3
【为什么用PHP5.3x?刚开始的时候我也是用的PHP5.4x系列的,但是HDWiki5.1不能正常解析,通过各种尝试,各种查资料,最终还是找到了答案,用PHP3.x】
(2)解压至指定目录D:\php-5.3.18;
(3)更改php.ini文件中的内容:
a,修改extension_dir="" 为extension_dir = "D:/php-5.3.18/ext/",约在820行;
b,打开注释:extension=php_gd2.dl、extension=php_mbstring.dll、extension=php_mysql.dll、extension=php_mysqli.dll,约在960行。
(4)复制文件php5ts.dll、php.exe、php.ini到C:\WINDOWS目录下。
3,安装Apache2.2
(1)下载Apache2.2 win32版本;
(2)一步一步安装即可;
(3)配置apache,让它能解析php,打开文件Apache2.2/conf/httpd.conf.,做如下更改:
a,更改ServerRoot "D:/Program Files/Apache Software Foundation/Apache2.2"【35行】
b,解注Listen 80【46行】;
c,更改LoadModule php5_module 'D:/php-5.3.18/php5apache2_2.dll'【59行】
d,更改DocumentRoot "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs"【180行】,同a
e,在AddType application/x-gzip .gz .tgz【约385行】之下添加AddType application/x-httpd-php .php,使之能解析php;
4,安装phpMyAdmin
(1)解压至指定目录D:\phpMyAdmin-3.5.2.2;
(2)将文件D:\phpMyAdmin-3.5.2.2\libraries\config.default.php复制一份到D:\phpMyAdmin-3.5.2.2并改名为:config.inc.php;
(3)编辑config.inc.php;
(4)运行D:\phpMyAdmin-3.5.2.2\examples中的SQL;
(5)编辑Apache2.2/conf/httpd.conf,搜索Alias 并添加Alias /phpMyAdmin "D:/phpMyAdmin-3.5.2.2";
5,配置HDWiki.
(1)解压HDWiki放置于上面配置的ServerRoot中;
(2)运行地址: http://localhost/hdwiki/ 安装即可。

先告一段落,终于可以在本地运行HDWiki了,终于完成了第一阶段,那么接下来还有什么呢?实现和UCneter的通信?实现Django同UCenter的通信?......敬请期待......期待的同时,也欢迎提宝贵意见。

备注:UCenter同步原理:

http://hi.baidu.com/dmkj2008/item/f01f901325d5e58989a95655

http://blog.zol.com.cn/2611/article_2610509.html

HDWiki相关问题解决:

http://kaiyuan.hudong.com/bbs/viewthread.php?tid=24301&extra=page%3D1

你可能感兴趣的:(Win32)