PHP程序员站--PHP编程开发平台
 当前位置:主页 >> 服务器 >> Apache服务器 >> 

使Apache配置更简洁——mod_macro概述

使Apache配置更简洁——mod_macro概述

来源:互联网  作者:  发布时间:2008-11-28
许多人有冗长的配置文件,只为了改改域名和主目录,就要一遍遍

许多人有冗长的配置文件,只为了改改域名和主目录,就要一遍遍地声明同样的块。这个有点不太清楚的问题已经被Fabien Coelho提出来了。

“我恨复制-粘贴。当配置appache服务器时,我经常要复制-粘贴一些部分,特别是配置虚拟主机,要打开类似的特性或参数时。为了避免这个问题,我需要服务器的运行配置文件有某种宏能力。[……]”
    为坚持"保持简单"的哲学,他只引入了两个新“命令”:


<Macro ...> ... </Macro>
Use ...

    让我们看一个真实世界中的例子吧:

<Macro VHostCGI $customer $domain>
<VirtualHost $domain:80>
  ServerName $domain
  ServerAlias www.$domain
  DocumentRoot /vaw/www/$customer/docroot/$domain/
  ScriptAlias /cgi-bin/ /var/www/$customer/cgi-bin/
  ErrorLog /var/log/apache/$customer/logs/$domain-error.log
  CustomLog /var/log/apache/$customer/logs/$domain-access.log combined
  <Directory /var/www/$customer/cgi-bin/>
    Options ExecCGI
  </Directory>
</VirtualHost>
</Macro>
Use VHostCGI customer1 example.com
Use VHostCGI customer15 sample.net
Use VHostCGI customer122 iamanexampletoo.org    如果适用的话,另一个例子将锁定一些目录:

<Macro PasswordProtect>
AuthName "Restricted area"
AuthType Basic
AuthUserFile /var/www/.htpasswd
require valid-user
</Macro>
<Directory /var/www/localhost/docroot>
  Options Indexes
</Directory>
<Directory /var/www/localhost/docroot/internal>
  Use PasswordProtect
  Options -Indexes
</Directory>
<Directory /var/www/localhost/docroot/downloads>
  Use PasswordProtect
  Options +FollowSymLinks
</Directory>    你看看,你可以简单地回顾发生了什么,你用不着复制和粘贴任何小节。:)

    如果您正好使用的是Gentoo,您只要emerge mod_macro,并且在/etc/conf.d/apache里用-D MACRO打开这个选项就行了。

 

Tags: Apache   mod_macro   Apache配置   配置   C  
最新文章
推荐阅读
月点击排行榜
PHP程序员站 Copyright © 2007-2010,PHPERZ.COM All Rights Reserved 粤ICP备07503606号