httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rbo...@apache.org
Subject svn commit: r1525477 - in /httpd/httpd/branches/2.4.x/docs/manual/mod: mod_macro.html.en mod_macro.html.fr mod_macro.xml.fr
Date Mon, 23 Sep 2013 00:19:12 GMT
Author: rbowen
Date: Mon Sep 23 00:19:12 2013
New Revision: 1525477

URL: http://svn.apache.org/r1525477
Log:
Rebuild mod_macro chnages.

Modified:
    httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.en
    httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.fr
    httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.xml.fr

Modified: httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.en
URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.en?rev=1525477&r1=1525476&r2=1525477&view=diff
==============================================================================
--- httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.en (original)
+++ httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.en Mon Sep 23 00:19:12 2013
@@ -27,87 +27,167 @@
 <p><span>Available Languages: </span><a href="../en/mod/mod_macro.html"
title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/mod/mod_macro.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a></p>
 </div>
-<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>This
module provides usage of macros within apache runtime configuration files</td></tr>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Provides
macros within apache httpd runtime configuration files</td></tr>
 <tr><th><a href="module-dict.html#Status">Status:</a></th><td>Base</td></tr>
 <tr><th><a href="module-dict.html#ModuleIdentifier">Module Identifier:</a></th><td>macro_module</td></tr>
-<tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_macro.c</td></tr>
-<tr><th><a href="module-dict.html#Compatibility">Compatibility:</a></th><td>Available
in Apache HTTPD 2.4.5 and later</td></tr></table>
+<tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_macro.c</td></tr></table>
 <h3>Summary</h3>
 
 
-    <p>This module provides macros within apache runtime configuration files.
-    These macros have parameters.  They are expanded when used (parameters are
-    substituted by their values given as an argument), and the result is
-    processed normally.</p>
+    <p>Provides macros within Apache httpd runtime configuration files,
+    to ease the process of creating numerous similar configuration
+    blocks. When the server starts up, the macros are expanded using the
+    provided parameters, and the result is processed as along with the
+    rest of the configuration file.</p>
+
 </div>
 <div id="quickview"><h3 class="directives">Directives</h3>
 <ul id="toc">
 <li><img alt="" src="../images/down.gif" /> <a href="#macro">&lt;Macro&gt;</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#undefmacro">undefMacro</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#undefmacro">UndefMacro</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#use">Use</a></li>
 </ul>
 <h3>Topics</h3>
 <ul id="topics">
-<li><img alt="" src="../images/down.gif" /> <a href="#features">Features</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#usage">Usage</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#tips">Tips</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#examples">Examples</a></li>
 </ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
 <div class="section">
-<h2><a name="features" id="features">Features</a></h2>
+<h2><a name="usage" id="usage">Usage</a></h2>
 
- <p>Definition of a macro:</p>
-    <ul>
-    <li> macro definition within a &lt;Macro&gt; section, following
-         the apache style.</li>
-    <li> user defined names for the macro and its parameters.</li>
-    <li> macro names are case-insensitive, like apache directives.</li>
-    <li> macro parameter names are case sensitive.</li>
-    <li> macro parameters must have distinct names.</li>
-    <li> error on empty parameter names.</li>
-    <li> redefining a macro generates a warning.</li>
-    <li> macro definitions can be nested... (but what for?)</li>
-    <li> warn about unused macro parameters.</li>
-    <li> warn about macro parameter names which prefix one another.</li>
-    <li> warn if a parameter is not prefixed by any of '<code>$%@</code>'
-         (good practice).</li>
-    <li> the available prefixes help deal with interactions with other
-         directives such as <code class="directive"><a href="../mod/core.html#define">Define</a></code>.</li>
-    <li> tip: it may be useful to define a macro parameter with surrounding
-         braces, say <code>${foo}</code> so that the name can appear with
-	 surrounding characters such as <code>bla${foo}bla</code>.</li>
-    <li> warn about empty macro contents.</li>
-    <li> warns if sections are not properly nested within a macro.
-         (if it is detected so).</li>
-    <li> the lexical scope of macro parameters is restricted to the macro text,
-         it is not forwarded to includes for instance.</li>
-    <li> arbitrary contents in macros.
-         <p>It means you can put perl sections or whatever you like in a macro.
-	 No assumption is made about the lexical structure (quotes, spaces or
-         whatever) within the macro contents but to expect a set of
-         backslash-continued independent lines.</p></li>
-    </ul>
-
-    <p>Use of a macro:</p>
-    <ul>
-    <li> number of arguments must match the definition.</li>
-    <li> all occurences of macro parameters are substituted by their values.</li>
-    <li> in case of conflicts, the longest parameter name is chosen.</li>
-    <li> macro expansion recursion is detected and stopped (error).</li>
-    <li> warn about empty arguments when used.</li>
-    <li> on errors, try to describe precisely where the error occured.</li>
-    <li> <code>$</code> and <code>%</code>-prefixed parameters
are not
-          escaped.</li>
-    <li> <code>@</code>-prefixed parameters are escaped in quotes.</li>
-    </ul>
-
-   <p>Removal of a macro definition:</p>
-   <ul>
-   <li> the macro must be already defined.</li>
- </ul>
+<p>Macros are defined using <code class="directive">&lt;Macro&gt;</code>
blocks, which contain the portion of
+your configuration that needs to be repeated, complete with variables
+for those parts that will need to be substituted.</p>
+
+<p>For example,  you might use a macro to define a <code class="directive">&lt;VirtualHost&gt;</code>
block, in order to define
+multiple similar virtual hosts:</p>
+
+<pre class="prettyprint lang-config">
+&lt;Macro VHost $name $domain&gt;
+&lt;VirtualHost *:80&gt;
+    ServerName $domain
+    ServerAlias www.$domain
+
+    DocumentRoot /var/www/vhosts/$name
+    ErrorLog /var/log/httpd/$name.error_log
+    CustomLog /var/log/httpd/name.access_log combined
+&gt;/VirtualHost&gt;
+&lt;/Macro&gt;
+</pre>
 
-    <pre class="prettyprint lang-config">
+
+<p>Macro names are case-insensitive, like httpd configuration
+directives. However, variable names are case sensitive.</p>
+
+<p>You would then invoke this macro several times to create virtual
+hosts:</p>
+
+<pre class="prettyprint lang-config">
+Use VHost example example.com
+Use VHost myhost hostname.org
+Use VHost apache apache.org
+
+UndefMacro VHost
+</pre>
+
+
+<p>At server startup time, each of these <code class="directive">Use</code>
+invocations would be expanded into a full virtualhost, as
+described by the <code class="directive">Macro</code> definition.</p>
+
+<p>The <code class="directive">UndefMacro</code> directive is used so that
later
+macros using the same variable names don't result in conflicting
+definitions.</p>
+
+<p>A more elaborate version of this example may be seen below in the
+Examples section.</p>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
+<div class="section">
+<h2><a name="tips" id="tips">Tips</a></h2>
+
+<p>Parameter names should begin with a sigil such as <code>$</code>,
+<code>%</code>, or <code>@</code>, so that they are clearly
+identifiable, and also in order to help deail with interactions with
+other directives, such as the core <code class="directive"><a href="../mod/core.html#define">Define</a></code>
directive. Failure to do so will 
+result in a warning. Nevertheless, you are encouraged to have a good
+knowledge of your entire server configuration in order to avoid reusing
+the same variables in different scopes, which can cause confusion.</p>
+
+<p>Parameters prefixed with either <code>$</code> or <code>%</code>
are
+not escaped. Parameters prefixes with <code>@</code> are escaped in
+quotes.</p>
+
+<p>Avoid using a parameter which contains another parameter as a prefix,
+(For example, <code>$win</code> and <code>$winter</code>) as this
may
+cause confusion at expression evaluation time. In the event of such
+confusion, the longest possible parameter name is used.</p>
+
+<p>If you want to use a value within another string, it is useful to
+surround the parameter in braces, to avoid confusion:</p>
+
+<pre class="prettyprint lang-config">
+&lt;Macro DocRoot ${docroot}&gt;
+    DocumentRoot /var/www/${docroot}/htdocs
+&lt;/Macro&gt;
+</pre>
+
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
+<div class="section">
+<h2><a name="examples" id="examples">Examples</a></h2>
+
+
+<h3>Virtual Host Definition</h3>
+
+
+<p>A common usage of <code class="module"><a href="../mod/mod_macro.html">mod_macro</a></code>
is for the creation of
+dynamically-generated virtual hosts.</p>
+
+<pre class="prettyprint lang-config">
+## Define a VHost Macro for repetitive configurations
+
+&lt;Macro VHost $host $port $dir&gt;
+  Listen $port
+  &lt;VirtualHost *:$port&gt;
+
+    ServerName $host
+    DocumentRoot $dir
+
+    # Public document root
+    &lt;Directory $dir&gt;
+        Require all granted
+    &lt;/Directory&gt;
+
+    # limit access to intranet subdir.
+    &lt;Directory $dir/intranet&gt;
+      Require ip 10.0.0.0/8
+    &lt;/Directory&gt;
+  &lt;/VirtualHost&gt;
+&lt;/Macro&gt;
+
+## Use of VHost with different arguments.
+
+Use VHost www.apache.org 80 /vhosts/apache/htdocs
+Use VHost example.org 8080 /vhosts/example/htdocs
+Use VHost www.example.fr 1234 /vhosts/example.fr/htdocs
+</pre>
+
+ 
+
+<h3>Removal of a macro definition</h3>
+
+
+<p>It's recommended that you undefine a macro once you've used it. This
+avoids confusion in a complex configuration file where there may be
+conflicts in variable names.</p>
+
+<pre class="prettyprint lang-config">
 &lt;Macro DirGroup $dir $group&gt;
   &lt;Directory $dir&gt;
-    require group $group
+    Require group $group
   &lt;/Directory&gt;
 &lt;/Macro&gt;
 
@@ -115,7 +195,10 @@ Use DirGroup /www/apache/private private
 Use DirGroup /www/apache/server  admin
 
 UndefMacro DirGroup
-    </pre>
+</pre>
+
+
+ 
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
@@ -150,7 +233,7 @@ UndefMacro DirGroup
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
-<div class="directive-section"><h2><a name="undefMacro" id="undefMacro">undefMacro</a>
<a name="undefmacro" id="undefmacro">Directive</a></h2>
+<div class="directive-section"><h2><a name="UndefMacro" id="UndefMacro">UndefMacro</a>
<a name="undefmacro" id="undefmacro">Directive</a></h2>
 <table class="directive">
 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Undefine
a macro</td></tr>
 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>UndefMacro
<var>name</var></code></td></tr>
@@ -178,7 +261,7 @@ UndefMacro RestrictedAccessPolicy
 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Base</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_macro</td></tr>
 </table>
-    <p> The <code class="directive">Use</code> directive controls the use
of a macro.
+    <p>The <code class="directive">Use</code> directive controls the use
of a macro.
     The specified macro is expanded. It must be given the same number of
     arguments than in the  macro definition. The provided values are
     associated to their corresponding initial parameters and are substituted

Modified: httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.fr
URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.fr?rev=1525477&r1=1525476&r2=1525477&view=diff
==============================================================================
--- httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.fr (original)
+++ httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.html.fr Mon Sep 23 00:19:12 2013
@@ -27,6 +27,8 @@
 <p><span>Langues Disponibles: </span><a href="../en/mod/mod_macro.html"
hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="../fr/mod/mod_macro.html" title="Français">&nbsp;fr&nbsp;</a></p>
 </div>
+<div class="outofdate">Cette traduction peut être périmée. Vérifiez la version
+            anglaise pour les changements récents.</div>
 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Ce
module permet d'utiliser des macros dans les fichiers
 de configuration Apache.</td></tr>
 <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
@@ -46,7 +48,7 @@ Apache</td></tr></table>
 <div id="quickview"><h3 class="directives">Directives</h3>
 <ul id="toc">
 <li><img alt="" src="../images/down.gif" /> <a href="#macro">&lt;Macro&gt;</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#undefmacro">undefMacro</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#undefmacro">UndefMacro</a></li>
 <li><img alt="" src="../images/down.gif" /> <a href="#use">Use</a></li>
 </ul>
 <h3>Sujets</h3>
@@ -160,16 +162,24 @@ UndefMacro DirGroup
 
 </div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
-<div class="directive-section"><h2><a name="undefMacro" id="undefMacro">undefMacro</a>
<a name="undefmacro" id="undefmacro">Directive</a></h2>
+<div class="directive-section"><h2><a name="UndefMacro" id="UndefMacro">UndefMacro</a>
<a name="undefmacro" id="undefmacro">Directive</a></h2>
 <table class="directive">
-<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Undefine
a macro</td></tr>
-<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>UndefMacro
<var>name</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Supprime
une macro</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>UndefMacro
<var>nom</var></code></td></tr>
 <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration
du serveur, serveur virtuel, répertoire</td></tr>
 <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_macro</td></tr>
-</table><p>La documentation de cette directive
-	n'a pas encore t traduite. Veuillez vous reporter  la version
-	en langue anglaise.</p></div>
+</table>
+    <p>La directive <code class="directive">UndefMacro</code> annule la
définition
+    d'une macro qui doit avoir été définie auparavant.</p>
+
+    <pre class="prettyprint lang-config">
+UndefMacro LocalAccessPolicy
+UndefMacro RestrictedAccessPolicy
+    </pre>
+
+
+</div>
 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"
/></a></div>
 <div class="directive-section"><h2><a name="Use" id="Use">Use</a>
<a name="use" id="use">Directive</a></h2>
 <table class="directive">

Modified: httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.xml.fr
URL: http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.xml.fr?rev=1525477&r1=1525476&r2=1525477&view=diff
==============================================================================
--- httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.xml.fr (original)
+++ httpd/httpd/branches/2.4.x/docs/manual/mod/mod_macro.xml.fr Mon Sep 23 00:19:12 2013
@@ -1,7 +1,7 @@
 <?xml version="1.0"?>
 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 <?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1524241:1525359 (outdated) -->
+<!-- English Revision: 1524241:1525476 (outdated) -->
 <!-- French translation: Fabien Coelho -->
 <!-- Updated by Lucien Gentis -->
 



Mime
View raw message