zoukankan      html  css  js  c++  java
  • 开源项目管理系统Collabtive搭建及调试

    开源项目管理系统Collabtive搭建及调试

    Contents

    最近在实验室的服务器上搭建了一个Collabtive项目管理系统,本文记录搭建过程及遇到的问题。

    环境要求

    以下是我的环境,可以成功安装,具体的环境要求可以在collabtive源码文件夹里的README文件里看到。比较简单的办法是直接安装xampp,直接集成了要求的几个软件。

    • 阿里云主机,Ubuntu 16.04LTS
    • Collabtive3.1
      • 官网下载,3.1是最新版本(两年没更新了...)
    • MySQL 5.7
    • PHP 5.6
    • Apache/2.4

    安装步骤

    1. 将下载下来的collabtive源码文件夹传输到服务器的指定路径下:/var/www/html,最后的完整路径是var/www/html/collabtive-31,目录名字可以随便修改,但是下面的步骤都要注意对应。
    2. 修改文件权限
    • 修改以下文件/目录的权限:
      • collabtive-31/templates_c
      • collabtive-31/files
      • collabtive-31/config/standard/config.php
    • 命令如下
      chmod -R 777 <目录名/文件名>
    1. 在mysql里新建数据库
      mysql -u root -p
      mysql> create database collabtive_new;
    2. 修改配置文件
      修改collabtive/config/standard/config.php,填入数据库名,用户名,密码等信息
      配置文件
    3. 运行安装脚本
      在浏览器输入http://<ip>/collabtive-31/install.php,如果一切顺利的话,那么会直接显示一个表单,向其中填入数据库的信息,点击提交即可。
      至此,安装步骤基本完成。系统使用比较简单,就不赘述了,具体可以看参考资料[1]中的介绍。

    遇到的问题

    使用过程中,发现了一些对中文支持的bug,以下是解决方案。

    1. 文件管理功能不支持中文
    • 上传文件名或者文件夹如果有中文,中文会被替换为下划线。
    • 看代码发现问题出在collabtive-31/include/class.datei.php文件下,代码里将非字母或数字的部分都替换成了下划线...将这部分注释掉即可。
      修改位置
    1. 项目管理导出的excel文件中文乱码
    • 原因是excel默认的中文编码是GB2312,而在php代码中,是按照utf8编码写入,自然就会乱码。
    • 代码位于collabtive-31/managetimetracker.php,解决方法是向导出的csv文件中加入一个BOM头,这样excel就直接以utf8编码来解析文件。具体修改方式如图。
      • 项目excel

      • 用户excel

    1. PDF无法导出
      这个问题我目前也没有解决,但是感觉导出PDF其实比较鸡肋,不能编辑,所以我也就懒得调试了。其实大概的思路跟上面excel类似,问题也是出在collabtive-31/managetimetracker.php文件里边,如果有需求的话,可以自己研究一下...

    参考资料

    [1] 旧版collabtive安装教程
    [2] PHP创建的csv文件在windows上乱码的问题
    [3] collabtive中文支持

  • 相关阅读:
    lintcode:Find the Connected Component in the Undirected Graph 找出无向图汇总的相连要素
    lintcode:Recover Rotated Sorted Array恢复旋转排序数组
    lintcode:Number of Islands 岛屿的个数
    lintcode :Trailing Zeros 尾部的零
    lintcode:Flip Bits 将整数A转换为B
    lintcode:strStr 字符串查找
    lintcode:Subtree 子树
    lintcode 容易题:Partition Array by Odd and Even 奇偶分割数组
    lintcode:在二叉查找树中插入节点
    lintcode:在O(1)时间复杂度删除链表节点
  • 原文地址:https://www.cnblogs.com/Howfars/p/11234228.html
Copyright © 2011-2022 走看看