本文最后更新于 2024-04-16,文章内容可能已经过时。

前言

BookStack APP是类似于GitBook的自搭建式知识库框架,拥有较强的分类功能,支持Markdown或WYSIWYG。

在搭建BookStack APP框架的最后一步进入Login页面的时候出现了404问题,也就是URL重写问题,使用的是Nginx。为了简化步骤在另外一台服务器使用了aaPanel,也就是海外版宝塔。URL重写比直接创建Nginx config要简单一些,但网络上没有给出示例,因此本篇教程将完整的过一遍BookStack APP的安装过程。

  • Linux CentOS 7 + aaPanel

警告

本篇教程搭建的是BookStack APP,不是BookStack.cn!请注意区分。该教程不适用于BookStack.cn! BookStack APP官方网站:https://www.bookstackapp.com/

安装过程


安装要求

安装BookStack需要以下配置:

PHP >= 8.0.2

  • PHP扩展组件: OpenSSL, PDO, MBstring, iconv, Tokenizer, GD, MySQL, SimpleXML & DOM.

  • 可选扩展组件: LDAP (如果你要用LDAP验证).

MySQL >= 5.7 或 MariaDB >= 10.2

用来存储BookStack配置和数据

Git Version Control

用来安装或从Git更新

Composer >= v2.0

用来安装PHP前置

和PHP兼容的网页服务器,Apache或Nginx


安装步骤

  1. 使用 cd 指令指定目录位置

  2. 使用 git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch 指令来克隆release分支的最新BookStack

  3. 确保当前目录是你clone下来的根目录,然后继续步骤

  4. 使用 composer install --no-dev 来执行compser的安装指令

  5. 复制一份 .env.example,然后将复制出来的文件命名为 .env, 然后填写你的数据库信息以及你的邮件服务器信息

  6. 确保 storage, bootstrap/cache & public/uploads 三个目录的文件夹权限可读写。

  7. 在当前目录下运行 php artisan key:generate 来生成一个新的key

警告:
如果你已经在这个文件夹生成过key了,就别生成了,会出大问题!

  1. 确保生成出来的key在 .env 中更新

  2. 在aaPanel或宝塔面板中的网站“URL重写”项中填写以下内容

    listen [::]:8080;
    
    server_name localhost;
    
    index index.php index.html;
    
    location / {
     try_files $uri $uri/ /index.php?$query_string;
    }

    并保存。

  3. 在aaPanel或宝塔面板中的网站目录中的运行目录更改为 /public

  4. 最后使用 php artisan migrate 来同步更新到数据库

  5. 完成!你现在可以访问你的网站,默认账户是[email protected],密码是password

  6. 不要忘记给你的站上SSL!

后记

总而言之就是很好用!