config.txt
changeset 5 b9483cdf9b77
parent 4 4b1d19412329
child 9 da48b3197a13
equal deleted inserted replaced
4:4b1d19412329 5:b9483cdf9b77
     8 
     8 
     9  > exim -bV
     9  > exim -bV
    10 
    10 
    11 Syntaktische Korrektheit allein ist jedoch nicht ausreichend. Fehler
    11 Syntaktische Korrektheit allein ist jedoch nicht ausreichend. Fehler
    12 können auch später, z.B. durch durch <<config.expansion,Text-Expansion>>, auftreten.
    12 können auch später, z.B. durch durch <<config.expansion,Text-Expansion>>, auftreten.
    13 Für eine einfach Überprüfung der Konfiguration eignen sich die Kommandos
    13 Für eine einfache Überprüfung der Konfiguration eignen sich die Kommandos
    14 zum Routing-Test:
    14 zum Routing-Test:
    15 
    15 
    16  > exim -bt <Adresse>
    16  > exim -bt <Adresse>
    17 
    17 
    18 == Konfigurationsdatei
    18 == Konfigurationsdatei
    55 aber sehr brauchbar. Z.B: `exim -C /dev/null -bP primary_hostname`, um
    55 aber sehr brauchbar. Z.B: `exim -C /dev/null -bP primary_hostname`, um
    56 Exims Vorstellung über den aktuellen Hostnamen zu überprüfen.
    56 Exims Vorstellung über den aktuellen Hostnamen zu überprüfen.
    57 
    57 
    58 Es gelten folgende einfache Regeln beim Lesen der Konfiguration:
    58 Es gelten folgende einfache Regeln beim Lesen der Konfiguration:
    59 
    59 
    60 .Whitespace
    60 Whitespace::
    61 Leer- und Tabulatorzeichen am Zeilenanfang und -ende werden ignoriert.
    61 Leer- und Tabulatorzeichen am Zeilenanfang und -ende werden ignoriert.
    62 
    62 
    63 .Kommentare
    63 Kommentare::
    64 Zeilen, die mit `#` beginnen, werden ignoriert. Wird an anderen Stellen
    64 Zeilen, die mit `#` beginnen, werden ignoriert. Wird an anderen Stellen
    65 ein `#` verwendet, hat dieses Zeichen *nicht* die Bedeutung eines
    65 ein `#` verwendet, hat dieses Zeichen *nicht* die Bedeutung eines
    66 Kommentarzeichens.
    66 Kommentarzeichens.
    67 
    67 
    68 .Fortsetzungszeilen
    68 Fortsetzungszeilen::
    69 Zeilen, die mit einem `\` enden, werden durch die Folgezeile fortgesetzt, 
    69 Zeilen, die mit einem `\` enden, werden durch die Folgezeile fortgesetzt, 
    70 der Zeilenumbruch wird dabei entfernt.
    70 der Zeilenumbruch wird dabei entfernt.
    71 
    71 
    72 .Macrodefinitionen
    72 Macrodefinitionen::
    73 // spec:6.4
    73 // spec:6.4
    74 Makros werden häufig verwendet, um sehr lange Konfigurationsausdrücke zu
    74 Makros werden häufig verwendet, um sehr lange Konfigurationsausdrücke zu
    75 vereinfachen.  Makros ermöglichen eine einfach Textersetzung beim
    75 vereinfachen.  Makros ermöglichen eine einfache Textersetzung beim
    76 *Einlesen* der Konfiguration:
    76 *Einlesen* der Konfiguration:
    77 
    77 
    78 ----
    78 ----
    79 FOO = foo   <1>
    79 FOO = foo   <1>
    80 FOO == bar  <2>
    80 FOO == bar  <2>
    83 <2> Neu-Definition des Macros
    83 <2> Neu-Definition des Macros
    84 
    84 
    85 Macros können auf der Kommandozeile mit `-DFOO=foobar` gesetzt bzw.
    85 Macros können auf der Kommandozeile mit `-DFOO=foobar` gesetzt bzw.
    86 überschrieben werden.
    86 überschrieben werden.
    87 
    87 
    88 .Einbettung weiterer Files
    88 Einbettung weiterer Files::
    89 In das Hauptkonfigurations-File können weitere Dateien eingebettet
    89 In das Hauptkonfigurations-File können weitere Dateien eingebettet
    90 werden:
    90 werden:
    91 
    91 
    92 ----
    92 ----
    93 .include other/file
    93 .include other/file
    94 ----
    94 ----
    95 
    95 
    96 Eine bedingte Einbettung ist mit `.include_if_exists` möglich.
    96 Eine bedingte Einbettung ist mit `.include_if_exists` möglich.
    97 
    97 
    98 .Bedingtes Einlesen
    98 Bedingtes Einlesen::
    99 // spec:6.9
    99 // spec:6.9
   100 In Abhängigkeit von definierten Macros können Teile der
   100 In Abhängigkeit von definierten Macros können Teile der
   101 Konfigurationsdatei überprungen werden:
   101 Konfigurationsdatei überprungen werden:
   102 
   102 
   103 ----
   103 ----
   134 
   134 
   135 authentication::
   135 authentication::
   136     Konfiguration der Authentifizierungsparameter als Client und als
   136     Konfiguration der Authentifizierungsparameter als Client und als
   137     Server
   137     Server
   138 
   138 
       
   139 .Konfigurationsblöcke
       
   140 Einige der Konfigurationsabschnitte bestehen aus Blöcken.  Diese Blöcke
       
   141 stellen Instanzen von Routern, Transports, ACL oder Authenticators dar.
       
   142 Der Name der Instanz ist frei wählbar.
       
   143 
       
   144 ----
       
   145 smarthost:                      <1>
       
   146    driver = manualroute         <2>
       
   147    route_list = * relay.site    <2>
       
   148 ----
       
   149 <1> Name des Blocks
       
   150 <2> blockspezifische Optionen
       
   151 
       
   152 [[config.elements]]
       
   153 === Elemente der Konfigurationsdatei ===
       
   154 
       
   155 Einzelne Konfigurationseinträge bestehen aus einer Option
       
   156 und dem Wert für die entsprechende Option.  Die Optionen sind
       
   157 entweder statische Namen oder Listen, deren Name frei wählbar ist:
       
   158 
       
   159 ----
       
   160 primary_hostname = foo.bar
       
   161 domainlist foo = example.org : example.com
       
   162 ----
       
   163 
       
   164 Die Liste der möglichen Optionen wird von immer länger. Die aktuelle
       
   165 Exim-Version kennt allein für den globalen Teil der Konfiguration knapp
       
   166 300 Optionen. Alle Optionen sind mit sinnvollen Standardwerten
       
   167 vorbelegt. 
       
   168 
       
   169 Konfigurationsoptionen implizieren einen bestimmten Typ für ihren Wert.
       
   170 Das ist vergleichbar mit Datentypen von Programmiersprachen. Bei einigen
       
   171 dieser Optionen wird der Wert direkt eingetragen, bei anderen Optionen
       
   172 ergibt sich der Wert zur Laufzeit durch <<config.expansion,Expansion>>
       
   173 eines Ausdrucks.
       
   174 
       
   175 .Boolsche Werte
       
   176 Der einfachste Typ ist der Typ *bool*, „Schalter“-Optionen. 
       
   177 Es gibt zwei Notationen für diese Optionen.
       
   178 
       
   179 Ohne Zuweisung::
       
   180     Der Name der Option steht für die aktivierte Option. Wird der Prefix
       
   181     `no_` oder `not_` verwendet, ist die Option deaktiviert.
       
   182 
       
   183 Mit Zuweisung::
       
   184     Die Werte 'yes', 'no', 'true' oder 'false' aktivieren bzw.
       
   185     deaktivieren die Option.
       
   186 
       
   187 .Aktivierung
       
   188 ====
       
   189     queue_only
       
   190     queue_only = yes
       
   191     queue_only = true
       
   192 ====
       
   193 
       
   194 .Deativierung
       
   195 ====
       
   196     no_queue_only
       
   197     queue_only = no
       
   198     queue_only = false
       
   199 ====
       
   200 
       
   201 
       
   202 
       
   203 [[config.expansion]]
       
   204 === Expansion von Werten ===
       
   205 
   139 // vim:ft=asciidoc
   206 // vim:ft=asciidoc