(MacOS 服务器)Apache 文件扩展名问题

(MacOS Server) Apache File Extension Questions

我在尝试访问本地网站时 运行 遇到了一些问题:

禁止 您无权访问此服务器上的 /index.html。 Apache 服务器位于 ffghost.local 端口 34580

我正在使用 macOS X Server 5.2 和 Apache 2.4.18。 OS X Server 自动创建两个默认网站(一个在端口 80 上,一个在端口 443 上)。我创建了一个新网站。据我了解,Apache 会在创建后自动从默认站点重定向到创建的站点。这没有发生。因此,为了开始消除冲突,我用新网站文件替换了默认站点所在的文件,突然间我收到了上述 404 消息。

我已经阅读了很多关于为什么会发生这种情况的可能性。我在终端中 运行 有一个 Apache 语法检查器,终端说语法没问题。所以从那里我打算检查配置文件,但有几个,我只想知道它们背后的要点。

似乎有大约 4 种文件扩展名类型。我不知道他们都是什么意思,也不知道他们是否活跃。

此外,OS X Server 和 Apache 似乎在两个不同的地方有相同的文件,我对更改哪一个感到有点困惑。如果我改变其中一个,它会反映在另一个吗?我需要改变他们两个吗?此外,我没有设置 DNS,不确定这是否是未在默认站点上拉出新网站的原始问题。

您在问题中混合了多个方面,这使得提供有用的答案变得很复杂。例如,您说您在访问您的站点时遇到 Forbidden,但后来您提到状态 404。前者可能是因为配置了允许访问该站点的用户组,而后者只是意味着未找到

关于您关于配置文件的实际问题:

刚刚以.conf结尾的文件是正在使用的文件。

但是,服务器应用程序使用了许多可能相关的不同配置文件:

路径 /Library/Server/Web/Config/apache2 包含一般配置文件

  • httpd.conf - 一般 Apache 配置
  • httpd_server_app.conf - 更通用的配置
  • 其他文件包含特定应用程序或网络应用程序的配置(后者在 /Library/Server/Web/Config/apache2/webapps 的 plist 文件中定义)

路径 /Library/Server/Web/Config/apache2/sites 包含特定于您的网站的配置文件。它们的名称类似于 0000_127.0.0.1_34543_your.domain.name.conf,其中 34543 是 https (SSL) 端口的配置,而 35480 表示 http 端口。还有一个像0000_127.0.0.1_34543_.conf(文件名中没有域名)这样的文件定义了默认站点。

除此之外,/Library/Server/Web/Config/proxy中还有两个配置代理服务的配置文件。

不建议手动调整配置文件,但 sites 子目录中的配置文件除外,因为它们可能会被服务器应用程序或更新服务器应用程序覆盖。

重要提示:如果您手动更改文件,则必须重新启动Apache 服务器才能使更改生效。使用 sudo serveradmin stop/start web 这样做。

但是,我不知道所有这些文件的详细文档,所以我尽量保持安全,可能不会编辑一般配置文件(仅 sites 中的那些)。我还建议记下任何手动更改,以便在必要时重新应用它们。

如果不确切知道您在服务器应用程序中配置了什么以及您如何更改了哪些文件,恐怕无法说出可能出了什么问题。我建议通过删除并重新添加网站来重新开始。