我正在运行一个小型的networking服务器(Apache 2.2 / 2.4),在不同的机器上(和不同的域下)使用基本相同的CGI基础设施。 每个网站的function取决于相当长的.htacces文件只有细微的差异(网站名称,文件位置,URL基地等)。 为了减less冗余编辑的需要,我必须以某种方式同步服务器间的.htaccess文件,尽pipe有细微的差别。
当涉及到CGI源代码,我可以很容易地使用SVN和Makefile来做到这一点。 特别是在这里,我有一个通过SVN分发的Makefile和一个由Makefile包含的非版本化Makefile.local ,并定义了本地设置。 我真的想做类似的.htaccess文件,但我不知道包括本地设置的方式。
是否有可能将本地设置“加载”到.htaccess文件中,是否可以将其作为另一个文件的“包含”或作为在其他地方定义本地环境variables的方式? 或者还有其他方式如何通常处理.htaccess文件?
非常感谢提前,任何帮助表示赞赏。
首先:我的pet peeve,从手册中引用.htaccess文件:
如果您有权访问httpd主服务器configuration文件, 则应该完全避免使用.htaccess文件。 使用.htaccess文件会降低您的Apache HTTP服务器速度。 您可以包含在.htaccess文件中的任何指令都可以在主Apacheconfiguration文件的
Directory块中更好地设置,因为它具有相同的效果,性能更好。
主要的Apacheconfiguration确实支持Include指令以包含特定的configuration文件和通配符模式,允许您将应用程序代码与服务器configuration分开。
如果您必须: Include指令在.htaccess文件中也是有效的。
通常情况下,服务器configuration比应用程序更加静态,并且通过configurationpipe理工具(认为木偶,厨师等等)进行维护,具有良好的function来分离和合并通用configuration和主机特定设置。