(MacOS Server)Apache文件扩展问题

时间:2017-04-14 00:15:41

标签: apache server config osx-server

我在尝试访问我的本地网站时遇到了某种问题:

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

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

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

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

  • .config(我假设这是活动文件)
  • .config.prev(我假设这是以前的版本或活动配置文件的副本,不再有效)
  • .config.orig(原始文件?并且不再有效)
  • .config.default(???)

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

1 个答案:

答案 0 :(得分:1)

您在问题中混合了几个方面,这使得提供有用答案变得复杂。例如,您说在访问您的网站时会收到禁止,但稍后您会提及状态 404 。前者可能是由于配置了允许访问该站点的用户组,而后者只是意味着 Not found

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

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

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

路径/Library/Server/Web/Config/apache2包含常规配置文件

  • httpd.conf - 一般Apache配置
  • httpd_server_app.conf - 更一般的配置
  • 其他文件包含特定应用程序或webapps的配置(后者在/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子目录中的配置文件除外,因为它们可能会被Server应用程序覆盖或更新Server应用程序时。

重要:如果手动更改文件,则必须重新启动Apache服务器才能使更改生效。使用sudo serveradmin stop/start web来执行此操作。

但是,我不知道所有这些文件的详细文档,因此我尝试保持安全并且可能不编辑常规配置文件(仅限sites中的那些文件)。我还建议记下所有手动更改,以便在必要时重新应用。

如果不完全知道您在Server应用程序中配置的内容以及您更改了哪些文件,我恐怕无法说出可能出现的问题。我建议通过删除和重新添加网站来重新开始。