网站(使用 KirbyCMS)全局“有效”,但某些后端功能无效。当我们尝试更改基本页面的状态(从“草稿”到“列出”)时,它不起作用。每次都会出现此错误(403 禁止 - 无法解析 API 的 JSON 响应):
经过一些研究,我发现当我尝试更改页面状态时,会发生此 POST 请求“https://xxxxx.fr/api/pages/test/status”,并且它给了我 403 禁止。所以我认为这是我的 Apache 服务器配置的错误。当我用调试日志检查错误日志时,我得到:
[Mon Sep 04 11:52:52.882989 2023] [authz_core:debug] [pid 31108] mod_authz_core.c(820): [client xxx.xxx.xxx.xx:58312] AH01626: authorization result of Require ip 127.0.0.1: denied
- [Mon Sep 04 11:52:52.882997 2023] [authz_core:debug] [pid 31108] mod_authz_core.c(820): [client xxx.xxx.xxx.xx:58312] AH01626: authorization result of <RequireAny>: denied
[Mon Sep 04 11:52:52.883002 2023] [authz_core:error] [pid 31108] [client xxx.xxx.xxx.xx:58312] AH01630: client denied by server configuration: /path/to/env/htdocs/public/api
这里是 apache vhost 配置
<Directory "/x/x/path/public">
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch -Indexes
AllowOverride All
Require all granted
</Directory>
我不明白为什么 Kirby 尝试 /public/api (这个文件夹不存在)以及为什么当我的 Apache 配置只是在“AllowOverride All & Require all grant”时它给我“Require ip 127.0.0.1: returned” …
我现在搜索了好几个小时,没有任何结果……我快疯了。你有想法吗?
Debian 10.13
阿帕奇/2.4.38
卡比3.7
我们创建 /public/api,这不会改变任何东西
还尝试修改 Vhost 和 htaccess 文件并检查配置文件中是否有被诅咒的字符,但没有找到任何
我们发现了这一点 grep -R 127.0.0.1 /etc/apache2
虚拟主机与 apache2 配置发生冲突...