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 ...
随机推荐
- 页面出现Incorrect string以及数据库内容乱码
我在制作 (www.helpqy.com) 的时候遇到了页面报错Incorrect string的问题,我使用的是mysql,数据表中有很多中文内容,最后发现在安装mysql的时候需要选择defaul ...
- C语言Win32 Application 的标题栏图标,任务栏图标,exe文件图标问题
我们这里新建的首先是一个空工程,新建c文件. 因为是空工程,我们没有资源文件,要用到图标资源,首先要新建和导入图标为资源. 选择引入资源,选择要引入的ico文件 完成,重命名保存Script_icon ...
- Direct2D教程I——简介及首个例子
在博客园里,系统的Direct2D的教程比较少,只有“万一”写了一个关于Direct2D的系列(Delphi 2009).于是,仿照其系列,写一个在VS下的Direct2D系列教程. 博客园中的高手还 ...
- 批量导出VBA工程中的Source
在做Excel宏相关项目的开发和维护过程中,我们经常需要导出VBA中的Source,但是Excel提供的宏编辑器中只能一个文件一个文件地导出,很不方便. 下面介绍2种批量导出的方法: 1.Source ...
- Hbase学习之概念与原理
一.hbase与列式存储 hbase最早起源于谷歌的一篇BigTable的论文,它是由java编写的.开源的一个nosql数据库,同时它也是一个列式存储的.支持分布式(基于hdfs)的数据库.什么是列 ...
- hadoop学习之hdfs文件系统
一.hdfs的概念 Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS. Hadoop是Apache Lucene创始人Doug Cu ...
- Codeforces35E(扫描线)
E. Parade time limit per test:2 seconds memory limit per test:64 megabytes input:input.txt output:ou ...
- 清空mysql数据表中的所有数据
- 清空全部数据,不写日志,不可恢复,速度极快 truncate table_name; -- 清空全部数据,写日志,数据可恢复,速度慢 delete from 表名 详情请查看区别
- css语法和基本知识
1.CSS全称为“层叠样式表”,它主要是用于定义HTML内容在浏览器内的显示样式,如文字大小.颜色.字体加粗等. 注:使用CSS样式的一个好处是通过定义某个样式,可以让不同网页位置的文字有着统一的字体 ...
- Js利用Canvas实现图片压缩
最近做的APP项目涉及到手机拍照上传图片,因为手机拍照的图片通常都比较大,所以上传的时候就会很慢.为此,需要对图片进行压缩处理来优化上传功能.以下是具体实现: /* * 图片压缩 * img 原始图片 ...