ShowDoc介绍

ShowDoc就是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。


  • API文档( ​​查看Demo​​)
    随着移动互联网的发展,BaaS(后端即服务)越来越流行。服务端提供API,APP端或者网页前端便可方便调用数据。用ShowDoc可以非常方便快速地编写出美观的API文档。
  • 数据字典( ​​查看Demo​​)
    一份好的数据字典可以很方便地向别人说明你的数据库结构,如各个字段的释义等。
  • 说明文档(​​查看Demo​​ )
    你完全可以使用showdoc来编写一些工具的说明书,也可以编写一些技术规范说明文档以供团队查阅。

它都有些什么功能


  • 分享与导出

    • 响应式网页设计,可将项目文档分享到电脑或移动设备查看。同时也可以将项目导出成word文件,以便离线浏览。

  • 权限管理

    • 公开项目与私密项目
      ShowDoc上的项目有公开项目和私密项目两种。公开项目可供任何登录与非登录的用户访问,而私密项目则需要输入密码验证访问。密码由项目创建者设置。
    • 项目转让
      项目创建者可以自由地把项目转让给网站的其他用户。
    • 项目成员
      你可以很方便地为ShowDoc的项目添加、删除项目成员。项目成员可以对项目进行编辑,但不可转让或删除项目(只有项目创建者才有权限)

  • 编辑功能

    • markdown编辑
      ShowDoc采用markdown编辑器,无论是编辑还是阅读体验都极佳很棒。如果你不了解Markdown,请在搜索引擎搜索”认识与入门 Markdown”
    • 模板插入
      在ShowDoc的编辑页面,点击编辑器上方的按钮可方便地插入API接口模板和数据字典模板。插入模板后,剩下的就是改动数据了,省去了很多编辑的力气。
    • 历史版本
      ShowDoc为页面提供历史版本功能,你可以方便地把页面恢复到之前的版本。


关于ShowDoc的介绍,请访问:​​http://blog.star7th.com/2015/11/1816.html​

环境依赖

1、必需环境


  • PHP5.3以上版本、php-gd库

2、可选环境


  • php-mysql模块、php-pdo模块、mysql数据库  
  • ShowDoc默认使用Sqlite数据库,数据库文件在/Sqlite目录下。PHP环境默认支持Sqlite,无需额外安装其他数据库。如果想使用Mysql数据库,则需要安装环境并参考下文的数据库配置说明做相应配置。

###安装和配置

1、全新安装




文件夹权限
请确保/Application/Runtime 、 /Public/Uploads 、 /Sqlite 、 /Sqlite/showdoc.db.php 有可写权限



Windows服务器
在php.ini里面把”extension=php_sqlite.dll”启用以便开启对Sqlite的支持;也启用php_mbstring.dll;Linux服务器则不需要此操作。



2、升级安装


  • 下载新代码后,除了/Sqlite目录下的所有文件和/Public/Uploads里的文件外(若存在的话),全部覆盖原来的代码。重新赋予相应文件夹权限,根据自己需要更改配置(如使用mysql的需要更改配置信息)。覆盖代码后,先不要直接访问首页。而是先备份数据库,然后在浏览器访问http://xxxx.com/index.php?s=/home/update/db 升级数据库结构,之后就可以正常访问首页了。

数据库

1、Sqlite数据库 or Mysql数据库?

ShowDoc默认使用Sqlite数据库,并且自动集成到/Sqlite目录下。用户下载代码后即可使用,无需再安装其他数据库环境(PHP环境已经内置支持Sqlite数据库)。

使用Sqlite数据库是为了方便,尤其对非web开发人员来说是个福音。但如果你需要使用Mysql数据库,ShowDoc也提供支持。但值得注意的是,ShowDoc只能在初始时选择一种数据库。如果你在使用过程中切换到了另一种数据库,则有丢失原来数据的风险。

ShowDoc早期默认使用Mysql数据库,这部分老用户升级时请继续且只能使用Mysql数据库。请参考下文的配置方式

2、Mysql数据库的配置方式

打开Application\Common\Conf\config.php,将第5、6行注视掉,然后开启第8、9行(把注释去掉)。效果应该如下:

//使用sqlite数据库(ShowDoc默认)
//'DB_TYPE' => 'Sqlite',
//'DB_NAME' => 'Sqlite/showdoc.db.php',
//使用mysql数据库
'DB_TYPE' => 'mysql',
'DB_NAME' => 'showdoc',

此时填写上相应的数据库配置信息,如数据库密码等。如果你已经在浏览器中访问过ShowDoc,记得把生成的缓存删除掉以让新配置生效。缓存文件在目录/Application/Runtime下。

3、导入数据库

将根目录的showdoc.sql文件导入Mysql数据库

错误排查

部署时出错,请先确认是否按照文档步骤执行(例如说目录权限有没有)。然后进Application/Runtime/Log 看一下日志,或清除下Application/Runtime/目录下所有文件和子目录(这些都是缓存)试试。再遇到无法解决的问题可上github和博客搜索下有没有已解决的的问题。也可以加qq交流群564671853。再不行还可以联系我,联系方式有博客、github、邮件等。

其他可选配置


  • 验证码
    \Application\Common\Conf/Config.php 配置项里面增加 ‘CloseVerify’ => true 即可关闭验证码

使用在线的ShowDoc

如果你没有自己的服务器,但又想使用ShowDoc作为分档分享工具,你可以使用在线的ShowDoc​​ http://doc.star7th.com​

​http://doc.star7th.com​​ 作为在线服务会长期维护,请放心托管你的文档数据,不用担心突然关站的问题。如对数据非常敏感的个人或企业,还是把ShowDoc部署到自己的服务器比较好。


1.安装 Apache + PHP

yuminstall httpd

yuminstall php php-gd php-mcrypt php-mbstring php-mysql php-pdo

servicehttpd start

chkconfighttpd on

showdoc需要5.3以上的php,查看php版本,正确后继续


2.准备showdoc安装文件

  有两种方式:

     a.上传已有的showdoc到 /var/www/html

     b.在/var/www/html使用命令下载,后解压得到showdoc

备注( 如果使用 wget -c https://codeload.github.com/star7th/showdoc/zip/master 在下载后得到一个master无文件类型,使用cp master master.zip,变为zip类型,然后unzip master.zip 即可得到showdoc-master)

3.统一showdoc主要安装文件和httpd的用户

    这是个大坑,网上许多都说的是给文件赋可写权限,其实文件默认是可写的,不可写是因为相关文件和httpd的用户不一致。

a. ps -ef|grep httpd查看httpd用户

本例为httpd用户为apache:

b.改变用户所属组

在showdoc-master内执行

chown-Rapache:apache install/ Public/Uploads/ Application/Runtime/server/Application/Runtime/ Application/Common/Conf/config.phpApplication/Home/Conf/config.phpSqlite

4.访问http://ip/showdoc-master/install/,进行安装如果提示如下

请赋予 install 目录以可写权限!

请赋予 Public/Uploads/目录以可写权限!

请赋予Application/Runtime 目录以可写权限!

请赋予server/Application/Runtime 目录以可写权限!

请赋予Application/Common/Conf/config.php 文件以可写权限!

请赋予Application/Home/Conf/config.php 文件以可写权限!

(如果你确定赋予了文件权限但却一直看到此信息,则可考虑关闭selinux试试)

a.查看selinux状态

/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态



b.临时关闭selinux

setenforce 0


c.再次访问http://ip/showdoc-master/install/,到此安装完成


备注:

开始安装时访问http://ip/showdoc-master/,直接会报目录[./Application/Runtime]不可写,这个只要执行第3、4步即可解决