参考文献:
http://www.zentao.net/
注:官网上也可直接下载,在官网上有四个连接,国际版的大家可以随意,个人觉还是本土的好用,但在站点一和站点二两个路径下载的zentao包安装上在初次使用和文件上传中还是有点差别的,站点一在上传带有大附件的东西是,我们看不到是否点击成功,但站点二的可以直观的看到,所以推荐下载站点二的:
这里我们直接安装最新版的禅道10.0版本的,此版本中仅仅优化了图形界面,还填补了许多以前版本的bug
首先我们需要安装lrzsz:
yum -y install lrzsz
把我们准备好的按转包导入/usr/local/src中
解压文件:
tar zxf /usr/local/src/ZenTaoPMS.10.0.stable.zbox_64.tar.gz.tgz -C /opt/
解压到此目录下我们就可以直接启动禅道了
sh /opt/zbox/zbox start
关闭禅道:
sh /opt/zbox/zbox stop
重启禅道:
sh /opt/zbox/zbox restart
修改默认Apache端口:
sh /opt/zbox/zbox -ap [port]
修改默认mysql端口:
sh /opt/zbox/zbox -mp [port]
注:一键安装包是把http和mysql都集成到zentao安装中的(默认http端口是80,mysql是3306,肯能会有端口冲突所以建议修改默认端口),所以不用我们额外安装,若不想使用自带的mysql数据库,可以选择其他的安装方式
首先我们修改Apache port和mysql port:
sh /opt/zbox/zbox -ap 9090
sh /opt/zbox/zbox -mp 3307
启动zentao:
sh /opt/zbox/zbox start
如下:
显示success表示我们成功了,但是真正成功我们得抓端口监听:
这是表示我们已经成功了,我们可以通过访问web来查看了:
若修改了Apache端口的访问:
http://ip:[Apache port]
若没修改直接访问IP即可(web默认即为80):
http://ip
访问成功如下:(点击开源版我们就可以开启禅道之旅了)
进入后我们可以设置语言环境:
当然默认中文就好使了,这时候有人就会有疑问了,怎么还需要登录用户和密码呢,我没创建过啊,是不是我点错了啊,不小心创建了,或者省略了哪一步啊,既然你看到了这边文档那我告诉你,这都不叫事,在禅道10.0版本后为了加强安全性,在首次登录我们需要初始密码,当然网上也可以看到,但是好多都是瞎扯的,正确的用户名和面是:
user:admin
password:123456
登录后系统会让我们修改密码的
原密码就是我们初始密码:123456
这时候我们安装部署就到此结束了可以使用了,下面要说的就是排坑及一些扩展性的东西
启动禅道时报错:
首先我们需要查看mysql和Apache日志信息有是否有报错
如果有报错,根据报错进行排查,但一般启动失败有一下几个问题:
禅道启动后errror_log中有大量error信息
如:
[Tue Aug 02 10:07:44.338117 2017] [mpm_event:alert] [pid 746:tid 2913958720] (11)Resource temporarily unavailable: apr_thread_create: unable to create worker thread
[Tue Aug 02 10:07:44.342509 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342585 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342590 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342593 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342598 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342604 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342609 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342613 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342616 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342620 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
[Tue Aug 02 10:07:44.342623 2017] [mpm_event:crit] [pid 746:tid 2901408576] (22)Invalid argument: ap_queue_pop failed
解决思路方向:
禅道数据库问题
解决思路方向:
还有在执行sh /opt/zbox/zbox restart 显示报错:
我们先执行:
sh /opt/zbox/zbox stop
在执行:
sh /opt/zbox/zbox start
禅道启动时数据库时报错,若在没有端口冲突的情况下还报错,那么可能是mysql库的目录权限不对,需要保证mysql的权限如下:
修改禅道默认附件上传大小
默认在禅道附件上传大小为50M,大于50M时候就无法上传
解决办法:
修改php.ini文件
vim /opt/zbox/etc/php/php.ini
需要修改的地方:
修改配置文件:
cd /opt/zbox/app/zentao/www/
修改两个配置文件,这两个配置文件是影藏的,查看方式:
ll -a /opt/zbox/app/zentao/www/
如下:
两个配置文件分别需要修改的地方:
.htaccess
.ztaccess
重启禅道即可:
sh /opt/zbox/zbox restart
查看是否修改成功:
此时附件已经显示可以上传500M
禅道附件已经修改了大小但依旧上传失败显示网络超时或者网络错误
如下:
解决问题思路:
在解决问题的之前我们需要了解下Ajax,这个问题是由于网速导致Ajax默认30超时导致失败
Ajax:
Ajax使用 JavaScript 向服务器提出请求并处理响应而不阻塞用户!核心对象XMLHTTPRequest。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据,即在不需要刷新页面的情况下,就可以产生局部刷新的效果。
Ajax 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息
默认Ajax时间响应时间为30S,当我们上上传文件大小除以没秒上传的带宽大于30的时候就会报错连接超时,网络连接失败这种类型的错误
着需要我们修改Ajax的默认响应时间即可
使用nginx解析域名登录禅道上传附件有问题,但使用IP和port登录上传却没有问题
当我们上传一两兆附件的时候页面都会显示网络错误,或者超时
解决办法思路:
当出现这种情况是,我们程序里的log是没有error信息的,所以我们只能通过浏览器查看浏览器做出的动作(建议使用google,右击查看或者按F12也行)如:
在这里面我们可以看到页面返回信息是nginx的,并且信息为too large
此时我们应该明白了问题出在那了,nginx上传文件大小默认是1M,所以我么只要修改下配置即可:
编辑nginx主配文件,在http{}字段添加一行配置:
client_max_body_size 100m;
把上传大小改成100M,但是实际情况还要根据网速来定,因为Ajax默认时间为30S
修改后重新载入nginx即可:
nginx -s reload
有志者事竟成,破釜沉舟,百二秦关终属楚;
苦心人天不负,卧薪尝胆,三千越甲可吞吴;