Mac OS X下Web服务器的正确目录布局是什么?

时间:2009-05-14 13:24:12

标签: macos deployment packaging osx-leopard cherokee

我正在打包切诺基Web服务器,这是一个非常快速的网络服务器,有一个很好的基于网络的GUI,用于配置由西班牙黑客Alvaro Lopez Herrera编写,可从http://www.cherokee-project.com获得。

到目前为止,我已经设法使用Apple的PackageMaker.app创建了一个.pkg安装程序,它随Xcode一起提供,但我在/ opt / cherokee下安装了所有内容。

我想我想让二进制文件转到已经在路径中的目录,并且对于联机帮助页和其他内容也是如此。

我看起来安装前缀= / usr的所有内容都可以很好地工作,除了应该转到/ etc / cherokee的配置文件和文件根目录可以转到/ var / www但我不确定。< / p>

是否可行或者我应该使用/ Library下的某些目录结构?喜欢/ Library / Cherokee / VERSION / ???

Apple捆绑的Apache似乎使用prefix = / usr进行安装,但在/ etc / apache2和CGIs中配置文件,将手册安装到/ Library / WebServer,文件根目录在/ Library / WebServer / Documents中。

也许我的docroot应该是/ Library / Cherokee / Documents或类似的东西......

作为参考,切诺基的默认布局如下:(只有dirs)

http://pastebin.com/f57bc2d21

提前感谢您的帮助! :)

1 个答案:

答案 0 :(得分:3)

请勿直接在/usr中安装。这是Apple的域名。虽然/opt可能没问题,但它不会在默认路径中,并且通常不会用作Mac OS X中第三方Unix软件的默认安装位置。

我的建议是在/usr/local下安装所有内容。 Apple不会触及此区域(例如,在系统更新期间等),/usr/local/bin应位于用户的默认路径中,并且我已观察到使用此位置的许多其他Mac OS X服务器软件包。

我使用的大多数Mac OS X软件包(以及我在Mac OS X上从源代码构建的大多数软件)都会创建一个包含/usr/local/whatever/...目录的软件包。因此,例如,所有MySQL都在/usr/local/mysql/...之下。这意味着MySQL二进制文件在/usr/local/mysql/bin/...中,在用户的默认路径中不是。但我认为,更高级别的目录结构的改进隔离是值得的牺牲。 (另一种选择是在/usr/local/whatever/...下安装所有内容,但随后在/usr/local/bin下的最重要的可执行文件中添加符号链接