Windows10下Xampp部署BookStack访问/books路径403、打开书籍404如何解决
问题修复步骤
第一步:开启Apache必要模块
- 打开Xampp控制面板,点击Apache行的
Config按钮,选择Apache (httpd.conf)- 搜索以下两行配置,去掉行首的
#注释(无注释则无需修改):LoadModule rewrite_module modules/mod_rewrite.so LoadModule negotiation_module modules/mod_negotiation.so - 搜索
AllowOverride配置,找到对应BookStack部署目录的<Directory>配置段,将AllowOverride None修改为AllowOverride All - 保存配置文件,重启Apache服务
- 搜索以下两行配置,去掉行首的
第二步:校验BookStack重写规则
404问题基本由重写规则失效导致,按以下步骤排查:
- 进入BookStack部署根目录,确认存在
.htaccess文件,若缺失从官方安装包根目录重新复制对应版本的文件 - 打开
.htaccess文件,在RewriteEngine On配置下方添加重写基准规则:- 若直接通过根域名/IP访问,添加
RewriteBase / - 若部署在子目录(比如访问路径为http://localhost/bookstack),添加
RewriteBase /bookstack/
- 若直接通过根域名/IP访问,添加
- 确认
.htaccess未被设置为只读权限
第三步:修复/books路径403 Forbidden问题
该问题由Apache目录索引规则和BookStack路由冲突导致:
- 重新打开
httpd.conf,搜索Options Indexes FollowSymLinks配置,删除Indexes参数,修改为Options FollowSymLinks,关闭Apache自动目录索引功能 - 打开BookStack根目录下的
.env配置文件,确认APP_URL参数与实际访问地址完全一致,末尾不要加斜杠,示例:APP_URL=http://127.0.0.1 - 保存所有修改后重启Apache,打开Xampp的Shell工具,进入BookStack根目录依次执行以下命令清理缓存:
php artisan cache:clear php artisan config:clear
第四步:兜底配置校验
- 确认Apache站点根目录指向BookStack的
public文件夹,而非BookStack整个项目目录,比如项目存放在C:\xampp\bookstack,则httpd.conf中的DocumentRoot需配置为"C:/xampp/bookstack/public",对应的<Directory>配置段路径同步修改 - 修改完成后重新校验
.htaccess规则,再次重启Apache即可
内容的提问来源于stack exchange,提问作者MindRoasterMir
相关产品推荐
相关产品推荐

