Centos7部署个人wiki(bookstack)踩坑版
Centos7部署个人wiki(bookstack)
- 安装epel-release
- 安装nginx,启动并设置自启(如有请忽略)
- 下载php-fpm以及所需依赖组件
- 配置php
- 更改php-fpm配置文件
- 启动php-fpm并设置自启动
- 安装mysql
- 安装Composer
- 安装bookstack
- 配置bookstack
- nginx用户授权
- 为 BookStack 生成唯一的应用程序密钥,并使用 PHP artisan 命令更新数据库模式
- 配置nginx
- 测试访问
在网上找的相关部署手册均有不完善的地方,踩了不少坑,以此文章做为部署汇总
安装epel-release
yum -y install epel-release
安装nginx,启动并设置自启(如有请忽略)
yum -y install nginx
systemctl start nginx
systemctl enable nginx
下载php-fpm以及所需依赖组件
因为版本适配的原因,需要下载php7.2版本以上的php-fpm,此处下载php74-fpm
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm //安装remi源
yum --enablerepo=remi-php74 install -y php-fpm php-mcrypt php-curl php-cli php-mysql php-gd php-xsl php-json php-intl php-pear phpw-devel php-common php-mbstring php-tidy php-zip php-soap curl //安装php-fpm以及所需组件
此处应注意:若下载php-gd时报错缺失所需依赖,先将remi的所有repo删除,再使用yum remove 卸载掉remi;重新安装remi源再尝试下载php-gd
配置php
vim /etc/php.ini //编辑php配置文件
修改以下行,并去掉行前注释:
cgi.fix_pathinfo=0
保存退出
更改php-fpm配置文件
vim /etc/php-fpm.d/www.conf //编辑配置文件
修改以下行,并去掉行前注释:
user = nginx
group = nginxlisten = /var/run/php-fpm/php-fpm.socklisten.owner = nginx
listen.group = nginx
listen.mode = 0660env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
启动php-fpm并设置自启动
systemctl start php-fpm
systemctl enable php-fpm
安装mysql
因版本适配原因,需下载mysql5.6以上的版本,此处直接安装最新版
vim /etc/yum.repos.d/mariadb.repo //新建repo
直接将下面内容复制到repo:
[mariadb]
name = MariaDB
baseurl = http://mirrors.aliyun.com/mariadb/yum/10.4/centos/7.6/x86_64/
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
enabled=1
gpgcheck=1
注:上述的baseurl需根据自己的centos版本修改
清除yum缓存,构建yum缓存:
yum clean all
yum makecache
下载mariadb:
yum -y install MariaDB-server MariaDB-client
启用mysql并设置自启动:
systemctl start mariadb
systemctl enable mariadb
初始化mysql,并新建用于bookstack的数据库、用户
mysql_secure_installation //初始化mysql,设置好root密码
mysql -u root -p **** //登陆mysqlmysql > create database bookstackdb; //新建数据库
mysql > create user 'bookstack'@'localhost' identified by '123456'; //新建用户
mysql > grant all privileges on bookstackdb.* to bookstack@localhost identified by '123456'; //赋予新建用户权限
mysql > flush privileges; //刷新权限
mysql > exit; //退出mysql视图
安装Composer
cd /usr/bin/ //进入bin文件夹(放置composer的目标文件夹)
curl -sS https://getcomposer.org/installer | php //安装composer
mv composer.phar composer //改名
可执行composer -v查看其版本,以确定是否成功安装
安装bookstack
此处bookstack从github直接克隆
yum -y install git //安装git
mkdir -p /var/www //新建文件夹存放bookstack
cd /var/www //进入文件夹
git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch //从github克隆bookstack
注:若上述git clone操作停顿在clone into,使用ctrl + c取消操作,进行以下操作:
ping github.com //ping github网站(一般不通)
systemctl restart network //重启网卡
git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch //从github克隆bookstack
克隆完成后,进行下面操作:
cd BookStack/ //进入bookstack文件夹
composer install //使用composer安装
配置bookstack
cp .env.example .env //复制一份配置文件并更名使用
vim .env //编辑配置文件
将以下内容进行修改:
APP_URL=http://(服务器IP)
# Database detailsDB_HOST=localhostDB_DATABASE=bookstackdbDB_USERNAME=bookstackDB_PASSWORD=123456
注:此处的APP_URL如果不改,最终访问会跳转到https://example.com
nginx用户授权
chown -R nginx:nginx /var/www/BookStack
为 BookStack 生成唯一的应用程序密钥,并使用 PHP artisan 命令更新数据库模式
/var/www/BookStack //进入文件夹
php artisan key:generate
php artisan migrate
配置nginx
cd /etc/nginx、conf.d/ //进入自己的Nginx所在配置文件夹
vim bookstack.conf //新建一个bookstack的nginx配置文件
以下内容直接复制进配置文件:
server {listen 80;server_name (自己服务器的域名或者IP);root /var/www/BookStack/public;access_log /var/log/nginx/bookstack_access.log;error_log /var/log/nginx/bookstack_error.log;client_max_body_size 1G;fastcgi_buffers 64 4K;index index.php;location / {try_files $uri $uri/ /index.php?$query_string;}location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) {deny all;}location ~ \.php(?:$|/) {fastcgi_split_path_info ^(.+\.php)(/.+)$;include fastcgi_params;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;}location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {expires 30d;access_log off;}}
保存退出
systemctl restart nginx //重启nginx
测试访问
浏览器输入http://(IP/域名)
默认账号密码:
admin@admin.com
password
Centos7部署个人wiki(bookstack)踩坑版相关推荐
- 最新Ubuntu20.04安装指南(防踩坑版)
文章目录 最新Ubuntu20.04安装.配置指南(防踩坑版) 一.备份(!!!) (1)Windows系统镜像 (2)个人资料 (3)一些杂项 二.启动盘UEFI引导 1.启动盘制作 2.设置以U盘 ...
- 阿里云部署Tiny Tiny RSS踩坑笔记
阿里云部署Tiny Tiny RSS踩坑笔记 前言 入坑了RSS,之前的配置是阿里云部署RSSHub,配合Inoreader进行文章阅读,详情见RSS入坑指南.阿里云部署RSSHub踩坑笔记.在202 ...
- 【完整记录】使用kubeadm部署kubernetes集群踩坑记录及解决方案
文章目录 搭建集群过程中遇到的问题及解决方案 1. 现有网上的kubernetes集群搭建教程中的kubeadm配置文件版本过老导致出现以下报错: 2. kubeadm init过程中pull镜像超时 ...
- Linux阿里云服务器Tomact从部署到放弃(踩坑系列)
最近在学后台,想一想应该在自己服务器做点什么,然后就去部署这个tomcat试试水! 不就是部署个tomcat吗,分分钟的事,然后就... 弄了我2小时(一直在踩坑),可能是因为我菜吧 1.首先在Lin ...
- Jetson AGX Xavier/Nano刷机指南(无需踩坑版)
文章目录 准备清单 刷机步骤 下载jetpack SDK 刷机 问题汇总 虚拟机USB版本兼容问题 Your system is not ready for install 连接AGX,虚拟机死机 准 ...
- Ubuntu 20.04 TLS安装(踩坑版)
Ubuntu 20.04 TLS 安装 前言 安装准备 下载镜像 制作启动盘 预留空间 安装 进入BIOS 界面 一般是这样的 华硕的大概是这样的 基础设置 分区 设置引导 更换国内源 直接设置 终端 ...
- 在C++平台上部署PyTorch模型流程+踩坑实录
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 导读 本文主要讲解如何将pytorch的模型部署到c++平台上的模 ...
- 经验 | 在C++平台上部署PyTorch模型流程+踩坑实录
点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:作者丨火星少女@知乎 来源丨https://zhuanlan ...
- 亲测可用centos7安装git_centos7安装git踩坑记
之前自己是按照Git 服务器搭建这篇博客来安装git服务器的,一步步顺序下来,但git clone的时候,每次都要求输入密码.说好的SSH免密登录呢.前后搞了一天多才搞定,现在记录下踩过的坑. 坑1: ...
最新文章
- 1.(基于欧式距离聚类实现的点云分割)
- 根据端口不同来切换站点_KVM切换器是什么,看懂这一篇就够
- Yoda 表示法错在哪里
- 云联会企业认证_今日新鲜事:沉浸式交互购车新体验 2020首届中国春季云车展启幕...
- XML--XML从入门到精通 Part 1 认识XML
- 继续教育统考计算机和英语难度怎么样,网络教育英语统考90分的难度怎么样
- excel合并两列内容_还在为合并WPS表格(Excel)中两列内容而犯愁?此方法简单高效...
- IBM 前面板显示信息提示
- nginx在windows无法停止所有服务_这5项windows服务项目很常见,关于它们的设置建议请仔细参考...
- 【C#学习笔记】函数调用
- 基于 LoadRunner 实现企业级服务器端性能测试的实践
- lf 前后端分离 (5) 优惠券
- 微信小程序--微信扫一扫登录pc页面功能的实现
- linux下qt实现vlc视频播放器,Qt编写视频播放器(vlc内核)
- 让你5分钟明白美国金融危机爆发的原因!
- selenium 模拟登陆豆瓣,爬取武林外传的短评
- Oracle的LAST_DAY函数
- 打印********的平行四边形
- LDPC译码原理(公式推导)及其matlab代码实现(超详细)
- 使用Weka进行数据可视化
热门文章
- 明源服务器修改固定IP,8.5 IP源站选路选项
- mac 安装php7.2,mac 安装php7.2后提示
- 电信网通的IP地址分布
- 加密算法中常见的IND安全模型
- CHIL-SQL-LCASE() 函数
- 2步释放esp32c3的GPIO11
- oracle导出1455,oracle 11g导出数据时报ORA 1455错误的处理方法
- 【渝粤教育】电大中专中药鉴定学作业 题库
- Android OpenGL ES (十三) 视频播放器
- 在Atollic TrueSTUDIO开发环境中集成STM32CubeProgrammer工具的方法