无法使用 ScriptAlias 连接 apache2

无法使用 ScriptAlias 连接 apache2

ScriptAlias我正在尝试在服务器上设置apache2,但是当我尝试使用别名连接它时,出现错误Forbidden

在此处输入图片描述

这是我的/etc/apache2/apache.conf

在此处输入图片描述

cgi.load已启用/etc/apache2/mods-enabled/

在此处输入图片描述

这是/new-cgi/foo.cgi文件及其权限:

在此处输入图片描述

如果我这样做sudo su www-data -s /bin/bash,我就可以访问该文件并执行它,没有任何问题。

日志中有一些警告(不是致命的),另外还有一个AH01630: client denied by server configuration我相信是问题的原因,但我不知道如何解决它:

在此处输入图片描述

我的 Apache2 版本是 2.4.41

提前感谢你的帮助!

答案1

您的脚本别名定义在右侧参数中缺少 /。它实际上为您在配置中输入的内容指定了别名,因此如果左侧参数有斜杠,而右侧没有,您最终会缺少 /。

在您的情况下,没有以 命名的目录或文件new-cgifoo.cgi/因此配置拒绝它。

确切的文档在这里:https://httpd.apache.org/docs/2.4/mod/mod_alias.html#scriptalias

相关内容