Unterstützen Apache-Konfigurationsdateien das Kommentieren von Blöcken?

48

Mit können Sie #einzelne Zeilen auskommentieren. Gibt es eine Syntax zum Auskommentieren ganzer Blöcke?

Ich habe es satt, den Block (speziell einen <Directory>Block) mit zu umgeben <IfModule asdfasdf>...</IfModule>, aber das hat nicht funktioniert.

ripper234
quelle

Antworten:

66

Ich bin auf diesen Beitrag von einer Google-Suche nach "Apache-Blockkommentar" gestoßen. Später entdeckte ich eine Nicht-Perl-, Nicht-Import-Lösung aus Apaches Kerndokumentation (obwohl ich mir sicher bin, dass dies keine beabsichtigte Vorgehensweise ist). In der Kerndokumentation für Apache 2.0 http://httpd.apache.org/docs/2.0/mod/core.html können Sie sehen, dass das Tag <IfDefine>Anweisungen ignoriert, wenn der von Ihnen angegebene Parameter nicht vorhanden ist:

<IfDefine IgnoreBlockComment>
...
</IfDefine>

Das "kommentiert" also erfolgreich die dazwischen liegenden Aussagen aus.

Garromark
quelle
7

Ich bin mir nicht sicher, ob Apache solche Kommentare hat.

Um dieses Problem zu umgehen, können Sie die include-Anweisung folgendermaßen verwenden:

yourfile.conf:

<Directory>
  ....
</Directory>

Wenn Sie diesen Block kommentieren möchten, müssen Sie nur die include-Zeile auskommentieren:

#include yourfile.conf
Khaled
quelle
Sad :( Ich habe gehört, NGinx hat eine einfachere Konfiguration.
Ripper234
2
Kommentare sind keine Konfiguration. Mit einem guten Texteditor können Sie auch schnell Dinge zu mehreren Zeilen hinzufügen. In Textmate ist es Wahltaste + Ziehen.
Ceejayoz
2

AFAIK, Apache unterstützt dies nicht.

Wenn Sie vimjedoch einen Apache-Konfigurationsblock verwenden , finden Sie hier einen Tipp (von meinem Kollegen), wie Sie ihn auskommentieren können.

Beispiel für dieses Snippet:

<Directory "a/b/c">
    SetEnvIf X-Forwarded-For ^x\.y\.z\.t let_me_in
    Order allow,deny
    allow from env=let_me_in
    ErrorDocument 403 http://google.com
</Directory>

Setzen Sie den Cursor unter das DZeichen in der ersten <Directory ...>Zeile und geben Sie Folgendes ein:

V/Dir -> Enter

gefolgt von:

:s/^/#/ -> Enter

  • V - um die aktuelle Zeile zu markieren
  • /Dir - wählt den gesamten Block aus
  • :s/^/#/- setzt #am Anfang jeder Zeile ein
Quanten
quelle
4
Ich denke, es ist einfacher, im Visual Block-Modus auf das öffnende Tag zuzugreifen, zum schließenden Tag zu scrollen und dann Shift-I (großes i) # Esc auszuführen.
Janus Troelsen