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 ...
随机推荐
- selenium3 无人工干预地自动下载某个文件
一:主要内容 下载效果展示 代码内容展示 saveToDisk不生效说明,即文件没有下载下来解决办法 二:展示效果 1.下载效果展示 用selenium3无人工干预的自动下载该文件到指定路径下,如:D ...
- Tomcat学习总结(6)——Tomca常用配置详解
注:Tomcat 8需要JRE7以上的JRE 1. Tomcat环境变量设置 1.1 Java环境变量设置 右键计算机—属性—高级系统设置—环境变量,在”系统环境变量”,设置如下三个变量(如果变量已有 ...
- Java 容器源码分析之1.7HashMap
以下内容基于jdk1.7.0_79源码: 什么是HashMap 基于哈希表的一个Map接口实现,存储的对象是一个键值对对象(Entry<K,V>): HashMap补充说明 基于数组和链表 ...
- JavaScript学习总结(二)——延迟对象、跨域、模板引擎、弹出层、AJAX示例
一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...
- Java基础——字符编码
一.ASII 美国(国家)信息交换标准(代)码. 计算机中只有数字,一切都是用数字表示,屏幕上显示的一个一个的字符也不例外. 一个字节可表示的数字为0-255,足以显示键盘上的所有的字符 例如. a ...
- python常用模块-01
1. 简单了解模块 写的每一个py文件都是一个模块. 还有一些我们一直在使用的模块 buildins 内置模块. print, input random 主要是和随机相关的内容 random() ...
- 防范跨站脚本攻击(XXS)的关键手段
1:加强对提交信息和页面显示信息的过滤,让非法提交内容无处施展: 2:让存储在cookie中的sessionid 无法被js 读取到. 如今的xss 相比网上很多资料中,在技术上已经发生了很大变化.由 ...
- GDAL打开HDF格式时遇到的中文路径问题(未解决)
众所周知,中文环境下(VS2010 C++工程编码为多字节编码),在使用1.8.0版本以后的GDAL打开中文路径下的影像文件(如GeoTiff文件)时, 需对中文文件路径做特殊处理,有2种方法:(我使 ...
- react native进阶
一.前沿||潜心修心,学无止尽.生活如此,coding亦然.本人鸟窝,一只正在求职的鸟.联系我可以直接微信:jkxx123321 二.项目总结 **||**文章参考资料:1. http://blog ...
- [Android] 设置AlertDialog打开后不消失
最近项目收尾,一堆bug要改,还要对用户操作体验做一些优化,也是忙的不行.周末难得清闲,出去逛逛,看看风景,还好因为习大大要来,南京最近的天气还不错,只是苦了当地的不少农民工,无活可干,无钱可拿.想想 ...