Nextcloud nach PHP Update nicht mehr aufrufbar

Es sieht mehr danach aus, dass dein PHP ganz durcheinander geraten ist.

Ich verwende kein Ubuntu. Du kannst aber mal diese Anleitung lesen. Natürlich nicht alles neu machen, sondern nur mal schauen. Wobei von ACPu steht da gar nichts. Aber du kannst ACPu ja mal deaktivieren. Ist ja nur eine Zeile in config/config.php . Dann kannst du auch übergangsweise das Paket deinstallieren.

Schau auch noch, was installiert ist:

dpkg -l |grep php

Installier scheint folgende:

ii  php-apcu-bc                          1.0.5-13+ubuntu20.04.1+deb.sury.org+1                              amd64        APCu Backwards Compatibility Module
ii  php-common                           2:84+ubuntu20.04.1+deb.sury.org+1                                  all          Common files for PHP packages
ii  php-pear                             1:1.10.12+submodules+notgz+20210212-1+ubuntu20.04.1+deb.sury.org+1 all          PEAR Base System
ii  php7.4-apcu                          5.1.20+4.0.11-1+ubuntu20.04.1+deb.sury.org+1                       amd64        APC User Cache for PHP
ii  php7.4-apcu-bc                       1.0.5-13+ubuntu20.04.1+deb.sury.org+1                              amd64        APCu Backwards Compatibility Module
ii  php7.4-cli                           7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        command-line interpreter for the PHP scripting language
ii  php7.4-common                        7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        documentation, examples and common module for PHP
ii  php7.4-curl                          7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        CURL module for PHP
ii  php7.4-dev                           7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        Files for PHP7.4 module development
ii  php7.4-fpm                           7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        server-side, HTML-embedded scripting language (FPM-CGI binary)
ii  php7.4-gd                            7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        GD module for PHP
ii  php7.4-igbinary                      3.2.1+2.0.8-6+ubuntu20.04.1+deb.sury.org+1                         amd64        igbinary PHP serializer
ii  php7.4-imagick                       3.4.4+php8.0+3.4.4-7+ubuntu20.04.1+deb.sury.org+1                  amd64        Provides a wrapper to the ImageMagick library
ii  php7.4-imap                          7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        IMAP module for PHP
ii  php7.4-intl                          7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        Internationalisation module for PHP
ii  php7.4-json                          7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        JSON module for PHP
ii  php7.4-mbstring                      7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        MBSTRING module for PHP
ii  php7.4-mysql                         7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        MySQL module for PHP
ii  php7.4-opcache                       7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        Zend OpCache module for PHP
ii  php7.4-readline                      7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        readline module for PHP
ii  php7.4-redis                         5.3.4+4.3.0-1+ubuntu20.04.1+deb.sury.org+1                         amd64        PHP extension for interfacing with Redis
ii  php7.4-soap                          7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        SOAP module for PHP
ii  php7.4-xml                           7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        DOM, SimpleXML, XML, and XSL module for PHP
ii  php7.4-xmlrpc                        7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        XMLRPC-EPI module for PHP
ii  php7.4-zip                           7.4.21-1+ubuntu20.04.1+deb.sury.org+1                              amd64        Zip module for PHP
ii  pkg-php-tools                        1.38                                                               all          various packaging tools and scripts for PHP packages

Wüsste ehrlichgesagt nicht, was ich von deiner Anleitung anwenden kann. Meine config.php sieht aktuell folgendermaßen aus:

<?php
$CONFIG = array (
  'passwordsalt' => 'xxxx',
  'secret' => 'xxx',
  'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => 'xxx',
    2 => 'xxx',
    3 => 'xxx',
  ),
  'datadirectory' => '/mnt/ncdata',
  'dbtype' => 'pgsql',
  'version' => '21.0.2.1',
  'overwrite.cli.url' => 'xxxx',
  'dbname' => 'nextcloud_db',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'ncadmin',
  'dbpassword' => 'xxxxxx',
  'installed' => true,
  'instanceid' => 'xxxx',
  'upgrade.disable-web' => 'false',
  'default_phone_region' => 'DE',
  'log_type' => 'file',
  'logfile' => '/var/log/nextcloud/nextcloud.log',
  'loglevel' => 2,
  'debug' => 'false',
  'log.condition' =>
  array (
    'apps' =>
    array (
      0 => 'admin_audit',
    ),
  ),
  'mail_smtpmode' => 'smtp',
  'remember_login_cookie_lifetime' => '1800',
  'log_rotate_size' => '10485760',
  'trashbin_retention_obligation' => 'auto, 180',
  'versions_retention_obligation' => 'auto, 365',
  'simpleSignUpLink.shown' => false,
  'filelocking.enabled' => true,
  'memcache.local' => '\OC\Memcache\APCu',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' =>
 array (
    'host' => '/var/run/redis/redis-server.sock',
    'port' => 0,
    'timeout' => 0.5,
    'dbindex' => 0,
    'password' => 'xxxx',
  ),
  'logtimezone' => 'Europe/Berlin',
  'htaccess.RewriteBase' => '/',
  'maintenance' => false,
  'mail_from_address' => 'xxxxx',
  'mail_sendmailmode' => 'smtp',
  'mail_domain' => 'xxxx',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_smtpauth' => 1,
  'mail_smtphost' => 'xxxxx',
  'mail_smtpport' => '465',
  'mail_smtpname' => 'xxxxx',
  'mail_smtppassword' => 'xxxxx',
  'mail_smtpsecure' => 'ssl',
);

Diese Zeile könntest du mal rauswerfen.
Und dann wie oben beschrireben mal php-apcu inkl. Abhängigkeiten deinstallieren. Dann nutzt du diese Komponente einfach nicht mehr. Und wenn das geht dann rückgängig machen und schauen, ob es dann (weiter) läuft.

Diese Zeile könntest du mal rauswerfen.
Und dann wie oben beschrireben mal php-apcu inkl. Abhängigkeiten deinstallieren. Dann nutzt du diese Komponente einfach nicht mehr. Und wenn das geht dann rückgängig machen und schauen, ob es dann läuft.

Poste Fehler, wenn du ACPU deinstalliert und deaktiviert hast.

Ok, ich werde es ausprobieren. Habe mir gerade noch die error.log des Apache2 log angeguckt:

AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Doctrine\\DBAL\

Dieser Fehler wird da noch aufgelistet…

Vielleicht hilft dir dieser Tipp

Also das ganze PHP-Zeug (Metapakete) deinstallieren, Abhängigkeiten löschen und wieder installieren.

Also ich habe das Paket php7.4-apcu deinstalliert, die Zeile aus der config.php entfernt und versucht auf das NC zuzugreifen. Leider weiterhin ohne erfolg.
Danach habe ich das Paket nocheinmal installiert und versucht zu testen. Leider geht es weiterhin nicht.

Welchen Fehler bekommst du während php7.4-apcu nicht installiert ist?

Leider weiterhin den Internal Server Error

Versuche es mal auf der Kommandozeile aufzurufen. Was gibt es dann für einen Fehler.

Etwa so:

sudo -u www-data php /pfad/zur/nextcloud/index.php

Auch hier bekomme ich:

Internal Server Error

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.

Ahhh jetzt bekomme ich mit dem sudp -u www-data php folgendes:

PHP Warning:  PHP Startup: Unable to load dynamic library 'apc.so' (tried: /usr/lib/php/20190902/apc.so (/usr/lib/php/20190902/apc.so: undefined symbol: zif_apcu_store), /usr/lib/php/20190902/apc.so.so (/usr/lib/php/20190902/apc.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Internal Server Error

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.


Ich habe mit sudo apt-get purge php8.* noch einige Pakete deinstalliert bekommen. Danach habe ich das Paket php7.4-apcu nochmal installiert. Damit bekomme ich nun die oben geschriebene Meldung

Was mich auch verwirrt, warum es so viele php.ini Dateien unter /etc/php/7.4 gibt:

**locate php.ini**
/etc/php/7.4/apache2/php.ini
/etc/php/7.4/cli/php.ini
/etc/php/7.4/fpm/php.ini
/usr/lib/php/7.4/php.ini-development
/usr/lib/php/7.4/php.ini-production
/usr/lib/php/7.4/php.ini-production.cli
/usr/share/php/docs/igbinary/igbinary.php.ini

Die PHP-Ini-Dateien haben verschiedene Zwecke. Du könntest vielleicht mal die Konfigurationen sichern (falls du irgendwann dort mal was angepasst hattest) und dann das ganze PHP-Zeug inkl. Abhängigkeiten mal deinstallieren. Deinstalliere auch deren Konfigurationen. Kontrolliere das mit “dpkg -l”. Erst dann installiere das PHP-Zeug neu.

Hi @Diamond_72

Ich würde dir das gleiche empfehlen wie @devnull geschrieben hat…

Deinstalliere PHP komplett inkl. allen Konfigurationsdateien mit:

sudo apt purge php*

Danach den Server neustarten und PHP nach dieser Anleitung neu installieren:

Runter scrollen bis zum Kapitel: Installation PHP 7.4 (alternativ php8.0-fpm)

Du kannst jeweils eine kompletten Codeblock auf einmal ins Terminal kopieren und mit Enter bestätigen. Ich nutze die Konfigurationen von Carsten Rieger schon länger und hatte nie grössere Probleme. Dass man mal etwas anpassen muss nach dem einen oder anderen Nextcloud Update lässt sich aber leider nicht immer ganz vermeiden. Ich hoffe das hilft dir weiter…

Danke für den Link. Ich habe die Anleitung Schritt für Schritt befolgt.
Es funktioniert leider weiterhin nicht. Nun bekomme ich folgende Meldung:

Service Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

und hier mal einen Auszug aus dem error.log vom apache2:

[Tue Jul 13 08:48:03.361968 2021] [proxy:error] [pid 21695:tid 139755324094208] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php7.4-fpm.ne>
[Tue Jul 13 08:48:03.362036 2021] [proxy_fcgi:error] [pid 21695:tid 139755324094208] [client XXX.XXX.XXX.XXX:57552] AH01079: failed to make connection to backend: httpd-UDS

Scheint mir, dass der apache nicht richtig läuft, da ich selbst eine phpinfo.php Datei nicht mehr aufrufen kann.

Hmm. Es scheint mir eher so als würde der PHP-FPM Dienst nicht richtig laufen… oder Apache verwendet nicht PHP-FPM…

Hast du alle Apache Module entsprechend aktiviert/deaktiviert und alle Dienste neu gestartet?

Starten Sie nun die Dienste neu

service php7.4-fpm restart

a2dismod php7.4 && a2dismod mpm_prefork

a2enmod proxy_fcgi setenvif mpm_event http2

service apache2 restart

a2enconf php7.4-fpm

service apache2 restart && service php7.4-fpm restart

Wie sieht deine Apache Config aus? Und was sagt…

sudo systemctl status php7.4-fpm 

und…

sudo systemctl status apache2

Hast du eine bestimmte Anleitung verwendet, als du die Nextcloud installiert hast?

Habe alle Befehle mal ausgeführt und geloggt:

e]0;root@MEINNETZWERK: /etc/php/7.4aroot@MEINNETZWERK:/etc/php/7.4# service apache2 restart
e]0;root@MEINNETZWERK: /etc/php/7.4aroot@MEINNETZWERK:/etc/php/7.4# a2enconf php7.4-fpm
Conf php7.4-fpm already enabled
e]0;root@MEINNETZWERK: /etc/php/7.4aroot@MEINNETZWERK:/etc/php/7.4# service apache2 restart && service php7.4-fpm restart
e]0;root@MEINNETZWERK: /etc/php/7.4aroot@MEINNETZWERK:/etc/php/7.4# sudo systemctl status php7.4-fpm 
e[?1he=
e[0;1;32m●e[0m php7.4-fpm.service - The PHP 7.4 FastCGI Process Managere[m
     Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor pre[me[7m>e[27m
     Active: e[0;1;32mactive (running)e[0m since Tue 2021-07-13 09:47:57 CEST; 18s agoe[m
       Docs: man:php-fpm7.4(8)e[m
    Process: 25943 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /rue[me[7m>e[27m
   Main PID: 25910 (php-fpm7.4)e[m
     Status: "Processes active: 0, idle: 30, Requests: 0, slow: 0, Traffic: 0ree[me[7m>e[27m
      Tasks: 31 (limit: 2262)e[m
     Memory: 36.5Me[m
     CGroup: /system.slice/php7.4-fpm.servicee[m
             ├─25910 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)e[m
             ├─25913 php-fpm: pool wwwe[m
             ├─25914 php-fpm: pool wwwe[m
             ├─25915 php-fpm: pool wwwe[m
             ├─25916 php-fpm: pool wwwe[m
             ├─25917 php-fpm: pool wwwe[m
             ├─25918 php-fpm: pool wwwe[m
             ├─25919 php-fpm: pool wwwe[m
             ├─25920 php-fpm: pool wwwe[m
             ├─25921 php-fpm: pool wwwe[m
             ├─25922 php-fpm: pool wwwe[m
             ├─25923 php-fpm: pool wwwe[m
             ├─25924 php-fpm: pool wwwe[m
e[7mlines 1-23e[27me[K
e[K             ├─25925 php-fpm: pool wwwe[m
e[7mlines 2-24e[27me[K
e[K             ├─25926 php-fpm: pool wwwe[m
e[7mlines 3-25e[27me[K
e[K             ├─25927 php-fpm: pool wwwe[m
e[7mlines 4-26e[27me[K
e[K             ├─25928 php-fpm: pool wwwe[m
e[7mlines 5-27e[27me[K
e[K             ├─25929 php-fpm: pool wwwe[m
e[7mlines 6-28e[27me[K
e[K             ├─25930 php-fpm: pool wwwe[m
e[7mlines 7-29e[27me[K
e[K             ├─25931 php-fpm: pool wwwe[m
e[7mlines 8-30e[27me[K
e[K             ├─25932 php-fpm: pool wwwe[m
e[7mlines 9-31e[27me[K
e[K             ├─25933 php-fpm: pool wwwe[m
e[7mlines 10-32e[27me[K
e[K             ├─25934 php-fpm: pool wwwe[m
e[7mlines 11-33e[27me[K
e[K             ├─25935 php-fpm: pool wwwe[m
e[7mlines 12-34e[27me[K
e[K             ├─25936 php-fpm: pool wwwe[m
e[7mlines 13-35e[27me[K
e[K             ├─25937 php-fpm: pool wwwe[m
e[7mlines 14-36e[27me[K
e[K             ├─25938 php-fpm: pool wwwe[m
e[7mlines 15-37e[27me[K
e[K             ├─25939 php-fpm: pool wwwe[m
e[7mlines 16-38e[27me[K
e[K             ├─25940 php-fpm: pool wwwe[m
e[7mlines 17-39e[27me[K
e[K             ├─25941 php-fpm: pool wwwe[m
e[7mlines 18-40e[27me[K
e[K             └─25942 php-fpm: pool wwwe[m
e[7mlines 19-41e[27me[K
e[Ke[m
e[7mlines 20-42e[27me[K
e[KJul 13 09:47:57 MEINESEITE systemd[1]: Starting The PHP 7.4 FastCGI Pre[me[7m>e[27m
e[7mlines 21-43e[27me[K
e[KJul 13 09:47:57 MEINESEITE systemd[1]: Started The PHP 7.4 FastCGI Proe[me[7m>e[27m
e[7mlines 22-44e[27me[K
e[Ka
e[Ke[7mlines 22-44/44 (END)e[27me[K
e[Ka
e[Ke[7mlines 22-44/44 (END)e[27me[K
e[Ka
e[Ke[7mlines 22-44/44 (END)e[27me[K
e[Ka
e[Ke[7mlines 22-44/44 (END)e[27me[K
e[Ka
e[Ke[7mlines 22-44/44 (END)e[27me[Ka
e[Ke[?1le>
e]0;root@MEINNETZWERK: /etc/php/7.4aroot@MEINNETZWERK:/etc/php/7.4# sudo systemctl status php7.4-fpm 
e[?1he=
e[0;1;32m●e[0m php7.4-fpm.service - The PHP 7.4 FastCGI Process Managere[m
     Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor pre[me[7m>e[27m
     Active: e[0;1;32mactive (running)e[0m since Tue 2021-07-13 09:47:57 CEST; 46s agoe[m
       Docs: man:php-fpm7.4(8)e[m
    Process: 25943 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /rue[me[7m>e[27m
   Main PID: 25910 (php-fpm7.4)e[m
     Status: "Processes active: 0, idle: 30, Requests: 0, slow: 0, Traffic: 0ree[me[7m>e[27m
      Tasks: 31 (limit: 2262)e[m
     Memory: 36.5Me[m
     CGroup: /system.slice/php7.4-fpm.servicee[m
             ├─25910 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)e[m
             ├─25913 php-fpm: pool wwwe[m
             ├─25914 php-fpm: pool wwwe[m
             ├─25915 php-fpm: pool wwwe[m
             ├─25916 php-fpm: pool wwwe[m
             ├─25917 php-fpm: pool wwwe[m
             ├─25918 php-fpm: pool wwwe[m
             ├─25919 php-fpm: pool wwwe[m
             ├─25920 php-fpm: pool wwwe[m
             ├─25921 php-fpm: pool wwwe[m
             ├─25922 php-fpm: pool wwwe[m
             ├─25923 php-fpm: pool wwwe[m
             ├─25924 php-fpm: pool wwwe[m
e[7mlines 1-23e[27me[K
e[K             ├─25925 php-fpm: pool wwwe[m
e[7mlines 2-24e[27me[K
e[K             ├─25926 php-fpm: pool wwwe[m
e[7mlines 3-25e[27me[K
e[K             ├─25927 php-fpm: pool wwwe[m
e[7mlines 4-26e[27me[K
e[K             ├─25928 php-fpm: pool wwwe[m
e[7mlines 5-27e[27me[K
e[K             ├─25929 php-fpm: pool wwwe[m
e[7mlines 6-28e[27me[K
e[K             ├─25930 php-fpm: pool wwwe[m
e[7mlines 7-29e[27me[K
e[K             ├─25931 php-fpm: pool wwwe[m
e[7mlines 8-30e[27me[K
e[K             ├─25932 php-fpm: pool wwwe[m
e[7mlines 9-31e[27me[K
e[K             ├─25933 php-fpm: pool wwwe[m
e[7mlines 10-32e[27me[K
e[K             ├─25934 php-fpm: pool wwwe[m
e[7mlines 11-33e[27me[K
e[K             ├─25935 php-fpm: pool wwwe[m
e[7mlines 12-34e[27me[K
e[K             ├─25936 php-fpm: pool wwwe[m
e[7mlines 13-35e[27me[K
e[K             ├─25937 php-fpm: pool wwwe[m
e[7mlines 14-36e[27me[K
e[K             ├─25938 php-fpm: pool wwwe[m
e[7mlines 15-37e[27me[K
e[K             ├─25939 php-fpm: pool wwwe[m
e[7mlines 16-38e[27me[K
e[K             ├─25940 php-fpm: pool wwwe[m
e[7mlines 17-39e[27me[K
e[K             ├─25941 php-fpm: pool wwwe[m
e[7mlines 18-40e[27me[K
e[K             └─25942 php-fpm: pool wwwe[m
e[7mlines 19-41e[27me[K
e[Ke[m
e[7mlines 20-42e[27me[K
e[KJul 13 09:47:57 MEINESEITE systemd[1]: Starting The PHP 7.4 FastCGI Pre[me[7m>e[27m
e[7mlines 21-43e[27me[K
e[KJul 13 09:47:57 MEINESEITE systemd[1]: Started The PHP 7.4 FastCGI Proe[me[7m>e[27m
e[7mlines 22-44e[27me[K

Es handelt sich um eine Appliance, die ich damals benutzt habe. Ich habe das NC nicht von null aufgesetzt. Wie gesagt, die Seite ist nun nicht mehr erreichbar, seitdem ich php8.0 über das php7.4 geklatscht habe. Ein entfernen hat leider danach auch nichts gebracht. Trotz dessen, dass ich php7.4 wieder installiert habe.
An der apache2 Config habe ich eigentlich nichts geändert. Diese sollte Standard sein.

Was für eine Appliance?

Naja Standard ist es, wenn du auf einem blanken Ubuntu oder Debain apt install apache2 eingibst. Und selbst das kann varieren, je nach Distribution. Auf einer “Appliance” sind in der Regel ja bestimmete Dinge bereits vorkonfiguriert, die von diesem “Standard” abweichen können.

Die Appliance ist diese hier:

Nextcloud VM – T&M Hansson IT AB

Anbei noch meine apache2 config:

e]0;root@XXX: /etc/apache2aroot@XXX:/etc/apache2# ls
apache2.conf    e[0me[01;34mconf-enablede[0m  magic           e[01;34mmods-enablede[0m  e[01;34msites-availablee[0m
e[01;34mconf-availablee[0m  envvars       e[01;34mmods-availablee[0m  ports.conf    e[01;34msites-enablede[0m
e]0;root@XXX: /etc/apache2aroot@XXX:/etc/apache2# nano apache2.conf 
e[?2004he[?1049he[22;0;0te[1;24re(Be[me[4le[?7he[39;49me[?1he=e[?1he=e[?25le[39;49me(Be[me[He[2Je[22;34He(Be[0;7m[ Reading... ]e(Be[me[22;32He(Be[0;7m[ Read 231 lines ]e(Be[me[He(Be[0;7m  GNU nano 4.8                      apache2.conf                                e[1;79He(Be[m
e[23de(Be[0;7m^Ge(Be[m Get Help  e(Be[0;7m^Oe(Be[m Write Out e(Be[0;7m^We(Be[m Where Is  e(Be[0;7m^Ke(Be[m Cut Text  e(Be[0;7m^Je(Be[m Justify   e(Be[0;7m^Ce(Be[m Cur Pos
e[24de(Be[0;7m^Xe(Be[m Exite[14Ge(Be[0;7m^Re(Be[m Read File e(Be[0;7m^\e(Be[m Replace   e(Be[0;7m^Ue(Be[m Paste Texte(Be[0;7m^Te(Be[m To Spell  e(Be[0;7m^_e(Be[m Go To Line
e[22de[2de[39;49me[36m# This is the main Apache server configuration file.  It contains the
e[3d# configuration directives that give the server its instructions.
e[4d# See http://httpd.apache.org/docs/2.4/ for detailed information about
e[5d# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
e[6d# hints.
e[7d#e[8d#e[9d# Summary of how the Apache 2 configuration works in Debian:
e[10d# The Apache 2 web server configuration in Debian is quite different to
e[11d# upstream's suggested way to configure the web server. This is because Debian'se[12;1H# default Apache2 installation attempts to make adding and removing modules,
e[13d# virtual hosts, and extra configuration directives as flexible as possible, in
e[14d# order to make automating the changes and administering the server as easy as
e[15d# possible.
e[17d# It is split into several files forming the configuration hierarchy outlined
e[18d# below, all located in the /etc/apache2/ directory:
e[19d#e[20d#       /etc/apache2/
e[21d#       |-- apache2.conf
e[2de[39me(Be[me[?12le[?25he[?25le[3de[?12le[?25he[?25le[4de[?12le[?25he[?25le[5de[?12le[?25he[?25le[6de[?12le[?25he[?25le[7de[?12le[?25he[?25le[8de[?12le[?25he[?25le[9de[?12le[?25he[?25le[10de[?12le[?25he[?25le[11de[?12le[?25he[?25le[12de[?12le[?25he[?25le[13de[?12le[?25he[?25le[14de[?12le[?25he[?25le[15de[?12le[?25he[?25le[16de[?12le[?25he[?25le[17de[?12le[?25he[?25le[18de[?12le[?25he[?25le[19de[?12le[?25he[?25le[20de[?12le[?25he[?25le[21de[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |       `--  ports.conf
e[39me(Be[me[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |-- mods-enabled
e[39me(Be[me[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |       |-- *.load
e[39me(Be[me[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |       `-- *.conf
e[39me(Be[me[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |-- conf-enabled
e[39me(Be[me[?12le[?25he[?25le7e[2;21re8
e[1;24re[21;1He[36m#       |       `-- *.conf
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me[41m       e[49me[36m`-- sites-enablede[39me(Be[me[K
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#       e[39me[41m        e[49me[36m`-- *.conf
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# * apache2.conf is the main configuration file (this file). It puts the pieces
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   together by including all remaining configuration files when starting up thee[21;1He[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   web server.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# * ports.conf is always included from the main configuration file. It is
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   supposed to determine listening ports for incoming connections which can be
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   customized anytime.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   directories contain particular configuration snippets which manage modules,
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   global configuration fragments, or virtual host configurations,
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   respectively.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   They are activated by symlinking available configuration files from their
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   respective *-available/ counterparts. These should be managed by using our
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   their respective man pages for detailed information.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# * The binary is called apache2. Due to the use of environment variables, in
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   the default configuration, apache2 needs to be started/stopped with
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will ne[39me(Be[0;7m>e[21;1He(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#   work with the default configuration.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Global configuration
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# ServerRoot: The top of the directory tree under which the server's
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# configuration, error, and log files are kept.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# NOTE!  If you intend to place this on an NFS (or otherwise network)
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# mounted filesystem then please read the Mutex documentation (available
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# at <URL:http://httpd.apache.org/docs/2.4/mod/core.html#mutex>);
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# you will save yourself a lot of trouble.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Do NOT add a slash at the end of the directory path.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#ServerRoot "/etc/apache2"
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#Mutex file:${APACHE_LOCK_DIR} default
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The directory where shm and other runtime files will be stored.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HDefaultRuntimeDir ${APACHE_RUN_DIR}
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# PidFile: The file in which the server should record its process
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# identification number when it starts.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# This needs to be set in /etc/apache2/envvars
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HPidFile ${APACHE_PID_FILE}
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Timeout: The number of seconds before receives and sends time out.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HTimeout 300
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# KeepAlive: Whether or not to allow persistent connections (more than
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# one request per connection). Set to "Off" to deactivate.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HKeepAlive On
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# MaxKeepAliveRequests: The maximum number of requests to allow
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# during a persistent connection. Set to 0 to allow an unlimited amount.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# We recommend you leave this number high, for maximum performance.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HMaxKeepAliveRequests 100
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# KeepAliveTimeout: Number of seconds to wait for the next request from the
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# same client on the same connection.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HKeepAliveTimeout 5
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# These need to be set in /etc/apache2/envvars
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HUser ${APACHE_RUN_USER}
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HGroup ${APACHE_RUN_GROUP}
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# HostnameLookups: Log the names of clients or just their IP addresses
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# e.g., www.apache.org (on) or 204.62.129.132 (off).
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The default is off because it'd be overall better for the net if people
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# had to knowingly turn this feature on, since enabling it means that
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# each client request will result in AT LEAST one lookup request to the
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# nameserver.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HHostnameLookups Off
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# ErrorLog: The location of the error log file.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# If you do not specify an ErrorLog directive within a <VirtualHost>
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# container, error messages relating to that virtual host will be
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# logged here.  If you *do* define an error logfile for a <VirtualHost>
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# container, that host's errors will be logged there and not here.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HErrorLog ${APACHE_LOG_DIR}/error.log
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# LogLevel: Control the severity of messages logged to the error_log.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Available values: trace8, ..., trace1, debug, info, notice, warn,
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# error, crit, alert, emerg.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# It is also possible to configure the log level for particular modules, e.g.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# "LogLevel info ssl:warn"
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogLevel warn
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Include module configuration:
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HIncludeOptional mods-enabled/*.load
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HIncludeOptional mods-enabled/*.conf
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Include list of ports to listen on
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HInclude ports.conf
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Sets the default security model of the Apache2 HTTPD server. It does
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# not allow access to the root filesystem outside of /usr/share and /var/www.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The former is used by web applications packaged in Debian,
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# the latter may be used for local directories served by the web server. If
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# your system is serving content from a sub-directory in /srv you must allow
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# access here, or in any related virtual host.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H<Directory />
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HOptions FollowSymLinks
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HAllowOverride None
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HRequire all denied
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H</Directory>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H<Directory /usr/share>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HAllowOverride None
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HRequire all granted
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H</Directory>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H<Directory /var/www/>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HOptions Indexes FollowSymLinks
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HAllowOverride None
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HRequire all granted
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H</Directory>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#<Directory /srv/>
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#       Options Indexes FollowSymLinks
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#       AllowOverride None
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#       Require all granted
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#</Directory>
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# AccessFileName: The name of the file to look for in each directory
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# for additional configuration directives.  See also the AllowOverride
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# directive.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HAccessFileName .htaccess
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The following lines prevent .htaccess and .htpasswd files from being
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# viewed by Web clients.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H<FilesMatch "^\.ht">
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;9HRequire all denied
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1H</FilesMatch>
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# The following directives define some format nicknames for use with
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# a CustomLog directive.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# These deviate from the Common Log Format definitions in that they use %O
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# (the actual bytes sent including headers) instead of %b (the size of the
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# requested file), because the latter makes it impossible to detect partial
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# requests.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Use mod_remoteip instead.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m#e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" e(Be[0;7m>e[21;1He(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combine(Be[0;7m>e[21;1He(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogFormat "%h %l %u %t \"%r\" %>s %O" common
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogFormat "%{Referer}i -> %U" referer
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HLogFormat "%{User-agent}i" agent
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Include of directories ignores editors' and dpkg's backup files,
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# see README.Debian for details.
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Include generic snippets of statements
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HIncludeOptional conf-enabled/*.conf
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Include the virtual host configurations:
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HIncludeOptional sites-enabled/*.conf
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[36m# Turn off ServerTokens for both Apache and PHP
e[39me(Be[me[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HServerSignature Off
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HServerTokens Prod
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1HServerName XXX.XXX
e[?12le[?25he[?25le7e[2;22re8e[22d
e[1;24re[21;1He[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[?12le[?25he[?25le[23de[Je[24de[?12le[?25he[24;1He[?1049le[23;0;0t
e[?1le>e[?2004le]0;root@XXX: /etc/apache2aroot@XXX:/etc/apache2#