CentOS7中部署Showdoc
CentOS7中部署Showdoc
文:铁乐与猫
前置环境
因为showdoc其实就是可以认为是一个php网站,所以从GitHub上下载整个代码包回来部署在服务器的网站目录上就好了。
但前提是你php和网站环境要先搭建好。
这里实操我使用的是比较熟悉的nginx+PHP
- 系统是CentOS7.2 64位
- nginx已编译安装好
- php环境通过yum安装一下,会比较好解决依赖关系。
yum install php php-gd php-fpm php-mcrypt php-mbstring php-mysql php-pdo

部署
配置文件
安装完后,在你安装的ngix目录下/nginx/conf/nginx.conf中http区块中加入如下配置:
include vhosts/showdoc.conf;
当然你也可以不单独为它列一个配置文件而是直接写进nginx.conf中,而我这里是将接下来的配置写到vhosts目录下的showdoc.conf中:
server {
listen 80;
server_name showdoc.testytowin.com;
#自定义的域名,因为我在内部有自己的DNS服务器
root /var/www/html;
#这个目录看有没有必要再重新指定,默认打算将showdoc代码包解到这里也行
index index.php index.html
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ \.php$ {
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
使用语法检测过也正常。
解压安装包
那么接下来就是下载代码包解压放到服务器上了。
然后进入目录/var/www/html(不存在则新建),将ShowDoc上传并按照部署手册(http://blog.star7th.com/2016/05/2007.html )安装即可。
我之前是在GitHub下载好了代码包,zip格式的,上传后还在服务器上折腾了一下unzip解压。现html文件夹下可以看到如下图:

添加启动服务
准备网页浏览自己服务器上的showdoc安装前先执行命令将nginx和php解析器启动,php-fpm由于是yum安装的可以再将服务添加到开机启动
service nginx start
#nginx如果是yum安装的才可以这样启动,我是编译安装的,所以我会再进nginx目录手动执行nginx脚本启动
service php-fpm start
chkconfig php-fpm on
chkconfig nginx on
#如果是yum安装的nginx可以添加到服务开机启动,因为我是编译安装的,我会用脚本去做成开机启动
- 启动Nginx
/application/nginx/sbin/nginx
#这是我编译安装nginx的目录
- 启动php服务
[root@jira sbin]# service php-fpm start
Redirecting to /bin/systemctl start php-fpm.service
[root@jira sbin]# chkconfig php-fpm on
注意:正在将请求转发到“systemctl enable php-fpm.service”。
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
设置权限
文件夹权限
请确保/Application/Runtime、/Public/Uploads、/Sqlite、/Sqlite/showdoc.db.php有可写权限Windows服务器
在php.ini里面把extension=php_sqlite.dll和extension=php_pdo_sqlite.dll启用以便开启对SQlite的支持;也启用php_mbstring.dll;
Linux服务器则不需要此操作。
运行安装
在浏览器访问http://xxxx.com/install/ (请将网址更改为你服务器域名或ip)。
安装完毕后可使用默认账号showdoc(密码:123456)登录,也可以自行注册账户
我还没做给权限的操作,并且也不是访问install,会像如下报错:

浏览器重新访问,后面加上/install (例如我的是172.16.0.111/install或http://showdoc.testytowin.com/install
出现选择语言的界面,证明已经可以正常使用安装了。

下一步提示给权限,进服务器操作chmod,权限给予就不累述了:

但安装php-mcrypt这个倒是有点麻烦,
之前yum 时也敲过安装的,显然是yum源没找着安装不上。
是换源还是直接跑去下载安装好了?
所以后面还是感觉docker容器部署的好处多。这是题外话。
yum install epel-release //扩展包更新包
yum update //更新yum源
yum install libmcrypt libmcrypt-devel mcrypt mhash
使用了更新yum源的方法来安装php-mcrypt

我好像搞错了,我现在yum装的是mcrypt并没有装php-mcrypt,难怪还是不成功。
yum install php-mcrypt

这个才是真的安装成功!
重来刷新再进行下去(我甚至还重启过了系统)

sqlite目录这个也要有权限,官网博客说明里有提到了,没仔细留意到,再去赋权,包括它的/Sqlite/showdoc.db.php要有写权限。
刷新页面

安装成功了。
界面
感觉不但install这个目录要删除,之前给得过高的权限也得调整,不过现在先进网站首页看看。

注册了一个用户,然后尝试新建了一个测试项目看

可以看到它和其它富文本编辑器相比,多了一些API接口模板,有JSON工具等,挺适合开发写这种文档的。
后续的使用以后再发博文。
【end】
CentOS7中部署Showdoc的更多相关文章
- etcd学习(4)-centos7中部署etcd
etcd的搭建 前言 单机 集群 创建etcd配置文件 更新etcd系统默认配置 启动 配置ETCD为启动服务 测试下 参考 etcd的搭建 前言 这里记录下如何搭建etcd 单机 在etcd的rel ...
- 无网络centos7中部署kubernetes
本文提供的kubernetes1.1实际为kubernetes0.8,最新kubernetes部署方式见下一篇文章:centos下kubernetes+flannel部署. 一.部署环境信息: 1)m ...
- CentOS6.5利用Docker部署ShowDoc
在Docker中部署ShowDoc 一.安装Docker 1.安装Docker yum install docker 最后出现Complete即可 2.启动服务 # service docker st ...
- Centos7中离线安装DockerCE最新版
一.简述 离线在Centos7中部署DockerCE. 二.步骤 (1)在有外网的计算A上执行: 1.配置安装源存放路径 mkdir -p /root/docker-ce-local &&am ...
- 在docker中部署centos7镜像
本篇文章参考自: https://www.cnblogs.com/linjj/p/5606911.html https://blog.csdn.net/u012767761/article/detai ...
- 在阿里云Centos7.6中部署nginx1.16+uwsgi2.0.18+Django2.0.4
上次在网上找了一个在阿里云Centos7.6中部署nginx1.16+uwsgi2.0.18+Django2.0.4的文档,可能是这个文档不是最新版的,安装的时候遇到了很多问题, 最后跟一个大神要了一 ...
- centos7中配置java + mysql +jdk +使用jar部署项目
centos7中配置java + mysql +jdk +使用jar部署项目 思维导图 1. 配置JDK環境 1.1下载jdk安装包 Java Downloads | Oracle 1.2 将下载j ...
- 在 CentOS7 上部署 MySQL 主从
在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...
- 在 CentOS7 上部署 zookeeper 服务
在 CentOS7 上部署 zookeeper 服务 1 用 SecureCRT 或 XShell 等 Linux 客户端工具连接至 CentOS7 服务器: 2 进入到 /usr/local/too ...
随机推荐
- redis学习(二) redis数据结构介绍以及常用命令
redis数据结构介绍 我们已经知道redis是一个基于key-value数据存储的数据结构数据库,这里的key指的是string类型,而对应的value则可以是多样的数据结构.其中包括下面五种类型: ...
- CentOS系统中文改英文
一.进入语言配置文件 vi /etc/sysconfig/i18n 用SSH执行以上命令,用vi编辑器修改/etc/sysconfig/i18n文件. 二.修改语言 将默认的LANG="z ...
- Java-Maven(八):配置远程中央仓库的各种方法
一.远程仓库的配置 在平时的开发中,我们往往不会使用默认的中央仓库,默认的中央仓库访问的速度比较慢,访问的人或许很多,有时候也无法满足我们项目的需求,可能项目需要的某些构件中央仓库中是没有的,而在其他 ...
- OpenSSL修复加密漏洞、加强Logjam防御
来源:TechTarget中国作者:Michael Heller翻译:张程程 OpenSSL项目团队为其密码库发布补丁以修复一个严重的漏洞(该漏洞可能允许攻击者解密HTTPS通信),同时强化对Logj ...
- new image的使用
在看别人的程序,用到了new image()这种方法,然而怎么看也不是很明白: 于是就上网搜,然而却没有一个人能够解开我心中的疑惑,因为没有一个人的程序是完整的, 即使我知道怎么用,但是我看不到效果就 ...
- 邂逅jQuery
jQuery是一个流行的JavaScript库,提供了HTML操作,CSS操作,事件,动画,Ajax和常用插件,极大地简化了JavaScript的开发. 可以从jquery.com下载jQuery库, ...
- C#中,Json的序列化和反序列化的几种方式总结
在这篇文章中,我们将会学到如何使用C#,来序列化对象成为Json格式的数据,以及如何反序列化Json数据到对象. 什么是JSON? JSON (JavaScript Object Notation) ...
- swift 基础小结01 --delegate、Optional、GCD的使用、request请求、网络加载图片并保存到沙箱、闭包以及桥接
本文主要记录swift中delegate的使用.“?!”Optional的概念.GCD的使用.request请求.网络加载图片并保存到沙箱.闭包以及桥接. 一.delegate的使用 swift中de ...
- JSON: jasckson 字段 过滤
有这样一个场景存在一个model类如果User,这里省略了getter/setter方法 class User { String name; String uuid; Long created; Lo ...
- 初学HTML-2
HTML标签的分类:单标签:只有开始标签,没有结束标签,即,只由一个<>组成的html. 双标签:有开始标签和结束标签,即,由一个<>和一个</ >组成的h ...