前言

就BUG管理而言,国内的禅道做得很不错,而且持续有更新。我们来看看如何从头到尾安装禅道,各位要注意的是,不是文章深或者浅,而是文章如何在遇到问题的时候,从什么途径和用什么方法解决问题的。现在发觉,很多刚出来的程序猿啊,缺少的就是解决问题的思路!

首先,登录禅道的官网,找到下载地址:http://www.zentao.net/dynamic/79905.html。 我这里下载的是“禅道项目管理软件源码

观察了下源码,是php开发的,当然配置apache+php比较好。以前也用过一些bug软件如BugTracker.NET,部署在IIS下,非常的不稳定,IIS老是挂掉,而且人数也有一些限制,所以如果对IIS等windows下的环境不是非常了解,还是搞lamp最省事,又稳定。

下载Apache

接着是下载apache,登录apache官网,在左边找到"Download!"链接,下载其中的2.4稳定版。



点击下载按钮,跳转到下面的链接中



因为是windows Server2008,因此果断选择二进制版本(Binarries)



进入下载链接之后,只见一堆的鸡肠,果断瞄准其中的win32链接



进来后看了半天,还是没有实际的地址,仔细把鸡肠读了一下,发现apache官网不提供编译好的二进制版本下载,只能从其他网站下载……真他妈的纠结,不提供,你说什么mirror?



随便选了个进行下载。

直接点击下载按钮,弹出Chrome下载,因为是外国资源,因此下载速度较慢,果断的切换为迅雷下载,因为有其他相应的资源提供,迅雷下载达到2M/s,这个时候迅雷果然发挥了其作用。

安装Apache

把压缩包进行解压,得到如下文件:



怎么安装为服务呢?这个时候需要一点命令行的知识

httpd.exe /? 查看帮助命令
httpd.exe -k install -n "servicename" 安装服务
httpd.exe -k uninstall -n "Apache24 卸载

当然,这么简单的步骤,是难不倒我们程序猿的



我们可以打开服务管理器看看我们的成果:

配置Apache

我们尝试启动apache服务看看,结果发现,启动不了



这种情况,把事件管理器打开,看看什么问题是最快的,但是,凭着经验,我认为应该是端口占用的问题,因为我的电脑开启了IIS,占用了80端口。我们看看其配置



看到了吧,尼玛,以前apache不是默认8080的吗,怎么现在想和iis等web服务器竞争了?

再次打开,还是不行,只能查看事件日志了。



原来是没有改ServerRoot,把ServerRoot指向当前Apache的物理地址,注意其中使用反斜杠。

Define SRVROOT "D:/software/httpd-2.4.16-x64/Apache24"
ServerRoot "D:/software/httpd-2.4.16-x64/Apache24"

同时需要把DocumentRoot也改一下

DocumentRoot "D:/software/httpd-2.4.16-x64/Apache24/htdocs"
<Directory "D:/software/httpd-2.4.16-x64/Apache24/htdocs">

这时再次启动,发现还有问题



显示是443端口被占用,无法启动,那么我们看看哪个程序被占用,在命令行下执行命令:netstat -ano



原来我们的SVNServer也用了443端口(https)。我们查看配置,查询ssl,找到下面的配置:

<IfModule ssl_module>
#Include conf/extra/httpd-ssl.conf
Include conf/extra/httpd-ahssl.conf
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

根据上述的配置,我们找到ssl的配置文件,我们把端口更改为9443:

#
# When we also provide SSL we have to listen to the
# standard HTTP port (see above) and to the HTTPS port
#
# Note: Configurations that use IPv6 but not IPv4-mapped addresses need two
# Listen directives: "Listen [::]:443" and "Listen 0.0.0.0:443"
#
Listen 9443

再次启动,还是有问题,我们发现Extra下还有个文件:httpd-ahssl.conf,把启动监听部分修改掉:

Listen 9443 https

这次果然成功启动,看见绿色就是精神爽啊!



打开默认的网页,可以看到apache的介绍了:

设置Apache的默认页

因为我们需要访问的是index.php这个默认的首页,因此需要在配置文件中增加对应的配置:

<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

下载PHP

首先到官网的下载页面看看,点击其中的Windows Download



这两个版本什么区别,我也不是很清楚,还是先搞个线程安全的吧,听起来也安全点,毕竟线程不安全的,都是要自己调配甚至要写程序控制的。还是果断转迅雷下载,秒下!

下载后解压到任意一个文件夹。

配置Apache对php的支持

打开httpd.conf,在文件的最后增加下述内容:

LoadModule php5_module "D:/software/php-5.6.12-Win32-VC11-x64/php5apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "D:/software/php-5.6.12-Win32-VC11-x64/"

重启Apache,发现启动不了,继续查看问题:



仔细查看了配置,发现并没有错,上网一查,说要下载个vc11的库,然后一看php的文件,果然是文件名都带有vc11的字样。找到官网:Visual C++ Redistributable for Visual Studio 2012 Update 4,选择中文下载:



下载下来之后安装:



再次启动Apache,这个时候成功了。

测试php是否安装成功

在apache下的httpdoc目录中新增一个info.php的文件,内容为:<?php phpinfo(); ?>。在浏览器中访问,出行下述界面,即安装成功!

配置php对mysql的支持

php.ini-production复制一份,改名为php.ini



在php.ini中去掉以下注释:

extension=php_mysql.dll
extension=php_mysqli.dll

安装禅道

解压下载的禅道到指定目录,然后我们在apahce中增加一个虚拟目录,根据网上给的方法进行配置:

##zentao
Alias /test "D:/zentaopms/www"
<Directory "D:/zentaopms/www">
Options Indexes MultiViews
AllowOverride None
order allow,deny
Allow from all
</Directory>

发现不行,原来apache2.4之后语法有了一点改变:

删除了 Order deny,allow 和 Order allow,deny

把 Deny from all 替换成了 Require all denied

把Allow from all 替换成了 Require all granted

然后还把 Allow from 192.168.10.21 这样的语句给替换成了 Require host 192.168.10.21

最终改为:

##zentao
Alias /test "D:/zentaopms/www"
<Directory "D:/zentaopms/www">
Options Indexes MultiViews
Require all denied
Require all granted
</Directory>

通过install.php安装

在浏览器中打开:http://localhost:8080/test/install.php,点击安装,检测环境,发现有点配置没有配置好:

设置Session存储目录

修改php.ini,设置Session的存储路径: session.save_path = "D:/PHP_SESSION",然后手动在D盘下新建这个文件夹,并且赋予可写的权限。

开启pdo_mysql扩展

因为对应的扩展是在ext这个扩展目录下,因此要在php.ini中指示扩展目录,找到下述语句去掉注释并设置为扩展的物理地址即可即可:

extension_dir = "D:/software/php-5.6.12-Win32-VC11-x64/ext"

继续安装,提供mysql的地址、用户名、密码即可。我们也可以后续修改这个生成的配置文件:

安装之后出行空白界面的处理

完成后跳转到index.php页面,而且还是空白的页面,且慢,官网的文档不是说现在会出行一个配置界面的吗?这个界面哪去了?

这个时候切勿紧张,出现这个错误是因为发生了错误,而禅道屏蔽了错误,所以我们看到的是空白界面。我们打开config\my.php,修改其中的调试字段为true:$config->debug = true

重新打开我们发现下述这么一段话:

21:10 ERROR: 您访问的域名 localhost:8080 没有对应的公司。 in module\common\model.php on line 58, last called by module\common\control.php on line 25 through function setCompany.

in framework\router.class.php on line 1568 when visiting

网上说是没有设置session.save_path,我确认设置了,那么删除掉my.php,然后重新安装以便,终于上述“设置帐号”的界面出来了。



关于如何修改禅道的登录的logo等以及如何安装mysql,以后再写文章了,饿了,回家吃饭去!

如何安装一个优秀的BUG管理平台——真的是手把手教学!的更多相关文章

  1. 如何安装一个优秀的BUG管理平台(转)

    前言 就BUG管理而言,国内的禅道做得很不错,而且持续有更新.我们来看看如何从头到尾安装禅道,各位要注意的是,不是文章深或者浅,而是文章如何在遇到问题的时候,从什么途径和用什么方法解决问题的.现在发觉 ...

  2. Service系统服务(一):安装一个KVM服务器、KVM平台构建及简单管理、virsh基本管理操作、xml配置文件的应用、为虚拟机制作快照备份、快建新虚拟机

    一.安装一个KVM服务器 目标: 本例要求准备一台 RHEL7.2 服务器,将其搭建为KVM平台,主要完成下列操作: 1> 关闭本机的SELinux保护.防火墙服务   2> 挂载RHEL ...

  3. redmine一键安装(项目管理、Bug管理、任务跟踪、代码管理、日报等等)

    1,下载一键安装包(64位系统) https://bitnami.com/stack/redmine 2,帮助文档(安装引导) http://www.360doc.com/content/15/033 ...

  4. 蒲公英: 一个提供App 存储、分发、Bug管理的网站

    一.蒲公英内测应用, https://www.pgyer.com/ 内测应用,仅需两步: 将应用上传到网站,生成安装链接和二维码 用户在手机上打开安装链接,或扫码二维码,即可开始安装 二.蒲公英Bug ...

  5. (视频) 《快速创建网站》1. 网站管理平台WordPress & 微软Azure 云计算简介

    网站并不神秘,过节了,在家闲的没事的,自己建个网站玩玩吧.每段视频不超过15分钟,地铁/公交/睡前/醒来看一段,几天之后变身建站专家,找老板加薪去! 在普通人眼里,创建网站是专业开发人员和IT工程师才 ...

  6. 基于SpringBoot+SSM实现的Dota2资料库智能管理平台

    Dota2资料库智能管理平台的设计与实现 摘    要 当今社会,游戏产业蓬勃发展,如PC端的绝地求生.坦克世界.英雄联盟,再到移动端的王者荣耀.荒野行动的火爆.都离不开科学的游戏管理系统,游戏管理系 ...

  7. 开发人员必备的几款bug管理工具

    Bug是软件开发过程中的“副产品”,也是开发人员最不想见到的状况.如果没有跟踪和梳理各种bug和问题并及时解决,项目就会花费非常多的时间,导致整个项目的重心偏移.如果在产品开发过程中,使用一个合适的B ...

  8. Android学习笔记_64_手机安全卫士知识点归纳(4) 流量统计 Log管理 混淆打包 加入广告 自动化测试 bug管理

    android 其实就是linux 上面包装了一个java的框架. linux 系统下 所有的硬件,设备(网卡,显卡等) 都是以文件的方式来表示. 文件里面包含的有很多设备的状态信息. 所有的流量相关 ...

  9. Docker私有云管理平台————Docker Shipyard

    一.shipyard中文版安装(CentOS) 注:本文安装操作均在root用户下,安装前需先安装Docker (传送门) 下载所需docker镜像 docker pull rethinkdb doc ...

随机推荐

  1. Restful资源文章

    理解RESTful架构 RESTful API设计指南 RESTful架构详解 NodeJs的RESTful API

  2. 我为什么要写LeetCode的博客?

    # 增强学习成果 有一个研究成果,在学习中传授他人知识和讨论是最高效的做法,而看书则是最低效的做法(具体研究成果没找到地址).我写LeetCode博客主要目的是增强学习成果.当然,我也想出名,然而不知 ...

  3. AngularJs之九(ending......)

    今天继续angularJs,但也是最后一篇关于它的了,基础部分差不多也就这些,后续有机会再写它的提升部分. 今天要写的也是一个基础的选择列表: 一:使用ng-options,数组进行循环. <d ...

  4. PHP与JAVA构造函数的区别

    早期的PHP是没有面向对象功能的,但是随着PHP发展,从PHP4开始,也加入了面向对象.PHP的面向对象语法是从JAVA演化而来,很多地方类似,但是又发展出自己的特色.以构造函数来说,PHP4中与类同 ...

  5. C++随笔:.NET CoreCLR之GC探索(3)

    有几天没写GC相关的文章了哈,今天我讲GC的方式是通过一个小的Sample来讲解,这个小的示例代码只有全部Build成功了才会有.地址为D:\coreclr2\coreclr\bin\obj\Wind ...

  6. Java 经典入门(一)

    一.什么是 Java 技术?为何需要 Java? Java 是由 Sun Microsystems 在 1995 年首先发布的编程语言和计算平台.有许多应用程序和 Web 站点只有在安装 Java 后 ...

  7. ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案

    好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...

  8. bash字符串操作

    参考 http://www.cnblogs.com/chengmo/archive/2010/10/02/1841355.html 问题:bash怎么提取字符串的最后一位?例如python中strin ...

  9. UML图中经常用到几种的关系图例

    学习这个东西挺奇怪的,时间一长就容易忘记,或者记不清楚.今天看到一些UML图的关系,发现有些出入了,索性就写下来,以后再忘记的时候过来看看. 在UML的类图中,常见的有以下几种关系: 继承(Gener ...

  10. CSS三个定位——常规、浮动、绝对定位

    .dage { width: 868px; background: #5B8C75; border: 10px solid #A08C5A; margin-top: -125px; margin-le ...