一个用于构建和配置Apache的zc buildout
项目描述
本食谱允许您为Zope/plone平台构建或配置Apache。
构建
支持选项
该食谱支持以下选项
- url
包含Squid源码的存档的URL。必须指定 url 或 svn。
- svn
包含Apache源码的Subversion仓库的URL。必须指定 url 或 svn。
- modules
在这里,您可以指定Apache编译时要使用的额外模块。每个模块占一行。以“–enable-”开头的前缀将附加到编译前的“configure”命令。例如,模块“ssl”变为configure选项“–enable-ssl”。
- extra_options
由于此食谱的“build”入口点是zc.recipe.cmmi的子类,因此我们可以在上述任何“modules”指定之外传递其他选项到“configure”命令。这允许您指定非模块选项,例如“–with-mpm=worker”或“–with-port=8888”。
示例用法
我们将首先创建一个使用该食谱的buildout
>>> write('buildout.cfg', ... """ ... [buildout] ... parts = apachebuild ... ... [apachebuild] ... recipe = plone.recipe.apache:build ... url = http://apache.multidist.com/httpd/httpd-2.2.10.tar.gz ... """ )
运行buildout将给我们
>>> print system(buildout) Installing apachebuild. apachebuild: Downloading apache tarball. apachebuild: Compiling Apache ...
配置
支持选项
该食谱支持以下选项
- mainconfig
Apache配置的位置(例如:/etc/apache2/apache2.conf)。如果没有提供值,我们将使用构建食谱中的配置文件的位置
- bind
Apache将监听请求的主机和端口。语法是[hostname][:port]。默认为80。如果省略主机名,则Apache将绑定到所有可用接口。
- backends
指定将处理请求的后端或后端。后端的语法
<hostname>[/<path>]:<ip address>:<port>
如果指定了多个后端,则每个后端都必须包含一个主机名。
- zope2_vhm_map
为Zope服务器定义虚拟主机映射。这是一个指定虚拟主机网站所在位置的 hostname:ZODB位置 条目的列表。Zope服务器的语法
<hostname>:<path>
- log_format
指定Apache的日志格式(combined,common),默认为common
- etag
指定要生成的ETag的格式(如果有,例如:“MTime Size”)
- resources
指定要映射为虚拟主机内的静态资源目录的目录。例如
images:%{buildout:directory}/parts/my.theme/browser/images css:%{buildout:directory}/parts/my.theme/browser/css js:%{buildout:directory}/parts/my.theme/browser/js
- resource-expires
配置与特定文件名模式匹配的静态资源的expires。例如
\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$:"access plus 2 days"
- resource-headers
配置与特定文件名模式匹配的静态资源的额外头信息。例如
\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$:Cache-Control:"max-age=172800, public, must-revalidate"
- redirects
定义Apache虚拟主机重定向。这是一个 hostname:target_hostname 条目的列表。重定向始终是永久的,并且仅重定向根文件夹。target_hostname必须与后端中定义的主机名匹配。例如
www.plone.org:plone.org(在这种情况下,所有对www.plone.org的请求都重定向到plone.org,它必须在后端参数中定义)
- extras
指定要包含在生成的vhost配置中的额外选项。
示例用法
我们将首先创建一个使用该食谱的buildout
>>> write('buildout.cfg', ... """ ... [buildout] ... parts = apacheconfig ... ... [apacheconfig] ... recipe = plone.recipe.apache:config ... mainconfig = /usr/local/apache/config/httpd.conf ... bind = 80 ... backends = plone.org:127.0.0.1:3128 ... zope2_vhm_map = plone.org:/plone ... redirects = www.plone.org:plone.org ... resources = ... docs:${buildout:directory}/plone/recipe/apache/doctests ... tests:${buildout:directory}/plone/recipe/apache/doctests ... resource-expires = ... \.(txt)$:"access plus 1 day" ... \.(py)$:"access plus 2 weeks" ... resource-headers = ... \.(txt|py)$:Cache-Control:"max-age=3600, public, must-revalidate" ... """)
运行buildout将给我们
>>> print system(buildout) Installing apacheconfig. ...
贡献者
巴黎冲刺2008,作者Carsten Rebbien和Youenn Boussard
Enfold Systems, Inc.的Sidnei da Silva添加了对使用Gzip压缩服务静态资源的支持。
Chris Shenton koansys.com修复了configure错误,允许extra_options
变更历史
0.3.3 (2015-09-11)
Apache 2.4兼容性。
0.3.2 (2009-xx-yy)
修复2.4下的Cheetah依赖项,使其与Plone 4一致 [encolpe]
防止当mainconfig文件不可写时崩溃。在控制台写入一条简单的消息。 [encolpe]
添加MANIFEST.in,以便将文本文件包含在dist中。
0.3.1 (2009-08-13)
修复了阻止将内建的configure选项(如–enable-rewrite)传递给超类的错误。允许在其他(例如,非模块)选项中指定超类的“extra_options”变量。 [cshenton]
从构建选项中获取绑定Apache的端口,而不是无条件地分配80端口。修复了launchpad错误编号#384874。[servilio(在合并0.3.1之前从主分支保留)]
0.3.0 (2008-11-11)
增加了将额外指令包含到生成的vhost配置中的支持。[witsch]
增加了永久重定向(主机名规范化)的支持。[naro]
增加了静态资源目录和gzip压缩的支持。[dreamcatcher]
0.2.1 (2008-07-02)
修复了setup.py中Cheetah的要求。[yboussard]
0.2.0 (2008-06-30)
将log_format选项添加到配置Apache日志。[yboussard]
0.1.0 (2008-04-27)
使用ZopeSkel创建配方。[Paris sprint 2008]
下载
项目详情
plone.recipe.apache-0.3.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5a1af6d7888c140c8f4729d17e914e8bd7bfb79ed3b1308e37f239bc8397c7fc |
|
MD5 | a67cf6da5301e23fa6b30822eeb62318 |
|
BLAKE2b-256 | be3d5941d641b4c07e0f39e6ea5f13f1ed1869c615efe8be677d879f5998cb92 |