如何定制 mavericks 的 mac osx 服务器 apache 配置?

如何定制 mavericks 的 mac osx 服务器 apache 配置?

我已经安装了 Mac OSX Mavericks Server,我想为 Apache Server 添加一些功能(gitolite、redmine 等)。我已经开始更新文件httpd_server_app.conf/Library/Server/Web/Config/apache2但不幸的是,它已被服务器覆盖为默认设置。可能是因为我在 UI 中更新了某些内容,或者发生了更新……无论如何,我想知道如何以永久和持久的方式更新配置文件,同时仍然使 OSX Server UI 和/或更新受益……

我可能错过了那个大大的标签:“把你的东西放在这里:”……

PS:顺便说一句,我希望修改一些当前的配置,而不仅仅是添加东西......

答案1

在 Mavericks 服务器中,设置一个新站点。Mavericks 会将其设置为 下的虚拟主机/Library/Server/Web/Config/apache2/sites。conf 文件以 IP、端口和主机命名。您可以编辑此文件,并且它不会被覆盖……在一定程度上。我添加了目录权限、wsgiAlias 路径、守护进程和基本 django 安装所需的工具。

需要注意的是,在编辑配置文件后,我还没有尝试从服务器应用程序更新主机名、端口或 IP。这可能会从默认模板生成一些全新的配置文件 - 不确定。

服务器应用程序还会给你带来一些权限问题。未来通过服务器应用程序更新的设置往往会覆盖你自己的写入权限。Apple 的服务器更新还可能将你现有的 conf 文件移动到以前的目录。

我确信这些问题有长期的解决方案。但我对权限很不擅长。

答案2

我知道这是一个老问题,但在 Yosemite(假设 Mavericks 和更早版本相同)中,在 /library/server/web/config/apache2/httpd_server_app.conf 中引用:

包括可选的/库/服务器/Web/配置/apache2/other/*.conf

我已经在那里创建了一个自定义的新 .conf 文件 /Library/Server/Web/Config/apache2/other/custom.conf,其中包含我需要的指令,并且可以确认它们已被选取和使用。

我认为在进行服务器升级时不会触及此文件夹以及上面提到的 IncludeOptional 行。现在您不必触及任何 server.app conf 文件,也不必担心权限等问题。希望这对某些人有所帮助。

答案3

我的 mbp 上的 apache 配置位于

/private/etc/apache2

包括httpd.conf

答案4

配置文件现在位于 /Library/Server/Web/Config/apache2 中。/etc/apache2/ 目录似乎基本上是虚拟的 - 在配置期间只有两个文件被触及。

相关内容