Apache2 Comando no válido 'SSLEngine'


108

Cuando reinicio httpd, aparece el siguiente error. ¿Qué me estoy perdiendo?

[root@localhost ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: Syntax error on line 22 of /etc/httpd/conf.d/sites.conf:
Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration

He instalado mod_ssl usando yum install mod_ssl openssh

Package 1:mod_ssl-2.2.15-15.el6.centos.x86_64 already installed and latest version
Package openssh-5.3p1-70.el6_2.2.x86_64 already installed and latest version

Mi sites.conf se ve así

<VirtualHost *:80>
#    ServerName shop.itmanx.com
    ServerAdmin webmaster@itmanx.com

    DocumentRoot /var/www/html/magento
    <Directory /var/www/html>
        Options -Indexes
        AllowOverride All
    </Directory>

    ErrorLog logs/shop-error.log
    CustomLog logs/shop-access.log
</VirtualHost>

<VirtualHost *:443>
    ServerName secure.itmanx.com
    ServerAdmin webmaster@itmanx.com

    SSLEngine on
    SSLCertificateFile /etc/httpd/ssl/secure.itmanx.com/server.crt
    SSLCertificateKeyFile /etc/httpd/ssl/secure.itmanx.com/server.key
    SSLCertificateChainFile /etc/httpd/ssl/secure.itmanx.com/chain.crt

    DocumentRoot /var/www/html/magento
    <Directory /var/www/html>
        Options -Indexes
        AllowOverride All
    </Directory>

    ErrorLog logs/shop-ssl-error.log
    CustomLog logs/shop-ssl-access.log    
</VirtualHost>

Respuestas:


52

Probablemente no cargue el módulo ssl. Debería tener una directiva LoadModule en algún lugar de sus archivos de configuración de apache.

Algo como:

LoadModule ssl_module /usr/lib64/apache2-prefork/mod_ssl.so

Por lo general, la plantilla de configuración de Apache tiene (en cualquier distribución) un archivo llamado (algo así como) loadmodule.confen el que debe encontrar una LoadModuledirectiva para cada módulo que cargue en Apache al inicio del servidor.


77
Además, es necesario instalarlo mod_ssl. En RHEL y CentOS, esto se hace con yum install mod_ssl.
Benedikt Köppel

2
Para Apache 2.4 es yum install mod24_ssl
Alejandro Pablo Tkachuk

1
sudo a2enmod ssl
thoni56

137

En muchos sistemas (Ubuntu, Suse, Debian, ...) ejecute el siguiente comando para habilitar el mod SSL de Apache:

sudo a2enmod ssl

Página del manual de a2enmod


44
Esto es específico de Debian pero la pregunta no está etiquetada como Debian.
jordanm

1
¿es a2enmod realmente específico de Debian? ¿O te quejas del uso de sudo?
Stéphane

44
a2enmodes específico de Debian Administra los enlaces simbólicos por la forma en que Debian divide las configuraciones de apache. Su comando es el equivalente deln -s /etc/apache2/mods-{available,enabled}/ssl.load; ln -s /etc/apache2/mods-{available,enabled}/ssl.conf
jordanm

1
a2enmodtambién se usa en suse.
dr0i

20

En CentOS 7, instalar el paquete "mod_ssl" y reiniciar el servidor apache funcionó para mí:

yum install mod_ssl
systemctl restart httpd

17

Solución httpd24:

yum install mod24_ssl

1
Eso presumiblemente funciona solo para (algunas) distribuciones basadas en RPM. ¿Cúal? ¿Por qué soluciona el problema?
vonbrand

Trabajé en Amazon Linux y Centos para mí. Es específicamente para Apache 2.4.
dtbarne

2

En Ubntu 18.04 biónico.

sudo a2enmod ssl; servicio sudo apache2 reiniciar


1
La segunda respuesta ya recomienda sudo a2enmod ssl;Tal vez debería agregar un comentario allí para reiniciar el servidor después del cambio.
Isaac
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.