Recientemente comencé un servidor apache2 en mi raspi, funcionando totalmente bien. Hoy, tuve que reiniciar mi servidor, sin cambiar nunca mis archivos de configuración , y por alguna razón recibí el siguiente error:
apache2: Syntax error on line 225 of /etc/apache2/apache2.conf: Syntax error on line 30 of /etc/apache2/sites-enabled/default-ssl.conf: Expected </Directory> but saw </VirtualHost>Bueno, pensé, vamos a rastrear eso :
/etc/apache2/apache2.conf
[...] 217 218 # Include of directories ignores editors' and dpkg's backup files, 219 # see README.Debian for details. 220 221 # Include generic snippets of statements 222 IncludeOptional conf-enabled/*.conf 223 224 # Include the virtual host configurations: 225 IncludeOptional sites-enabled/*.conf 226 227 # vim: syntax=apache ts=4 sw=4 sts=4 sr noetNo hay nada malo con la línea 255. En realidad, incluido por apache.
/etc/apache2/sites-enabled/default-ssl.conf
1 <IfModule mod_ssl.c> 2 <VirtualHost *:443> 3 4 ServerAdmin myemail@gmail.com 5 ServerName mydomain.net 6 7 DocumentRoot /var/www/html 8 9 <Directory /var/www/html> 10 Options Indexes FollowSymLinks 11 AllowOverride None 12 Require all granted 13 </Directory> 14 15 ErrorLog ${APACHE_LOG_DIR}/error.log combined 16 CustomLog ${APACHE_LOG_DIR}/access.log combined 17 18 SSLEngine on 19 SSLCertificateFile /etc/apache2/ssl/mydomain.net.cer 20 SSLCertificateKeyFile /etc/apache2/ssl/mydomain.net.key 21 SSLCertificateChainFile /etc/apache2/ssl/mydomain.net.intermediate.cer 22 23 <Directory /var/www/html/Humboldtplan> 24 AuthType Basic 25 AuthName "Restricted Content" 26 AuthUserFile /etc/apache2/.passwords/humboldt 27 Require valid-user 28 </Directory> 29 30 </VirtualHost> 31 </IfModule> Ahora realmente no puedo entender el problema aquí. Me rompí la cabeza sobre lo que podría estar mal, pero todo me parece bien. Todas las etiquetas están correctamente cerradas, el </VirtualHost> está donde debería estar. Además, exactamente la misma configuración funcionó antes, ¿cuál es el problema tan de repente?
Pensé que podría ser un problema no relacionado como la memoria, así que hice todo lo básico. Actualicé todos los paquetes, reinicié mi raspi, aún no funcionaba, lo apagué y desconecté para solucionar eventuales problemas de memoria, aún no funcionó.
¿Que esta mal aquí?
Bueno, la respuesta es un error de "espacio en blanco" decepcionante. Imprimiendo los caracteres escapados con cat -An [...] me dio lo siguiente:
7 ^I^IDocumentRoot /var/www/html$ 8 $ 9 ^I^I<Directory /var/www/html>$ 10 M-bM-^@M-^K^I^I^IOptions Indexes FollowSymLinks$ 11 M-bM-^@M-^K^I^I^IAllowOverride None$ 12 ^I^I^IRequire all granted$ 13 M-bM-^@M-^K^I^I</Directory>$ 14 $ 15 ^I^I#ErrorLog ${APACHE_LOG_DIR}/error.log$ 16 ^I^I#CustomLog ${APACHE_LOG_DIR}/access.log combined$ 17 $ No tengo idea de qué significa exactamente M-bM-^@M-^K (aparte de alguna forma de caracteres de espacio en blanco UTF-8) ni cómo terminaron realmente en ese archivo (especialmente porque, como dije, no he editado ellos mientras el servidor estaba activo). Pero eliminarlos parece haber resuelto mi problema.
Estos fueron especialmente sorprendentes ya que no impidieron que el cursor saltara de una pestaña a otra, ni formatearon el documento de ninguna manera. Solo me di cuenta cuando traté de comentar las líneas específicas, ya que no estaban marcadas en azul (como "comentadas") después de poner un hashtag delante de ellas.