Apache:无效命令“SSLEngine”,可能拼写错误或由未包含在服务器配置中的模块定义。

66

在为Apache2虚拟主机配置SSL/HTTPS连接时,添加了配置并使用命令"a2ensite pm.university.com.conf"启用配置后,我收到了这个错误信息"Invalid command 'SSLEngine',也许拼写有误或定义的模块未包含在服务器配置中"。我将回答自己的问题。

6个回答

121

原来我已经启用了ssl模块,但是我需要再次执行一次才行,以下是命令:

sudo a2enmod ssl

现在重新启动apache,像这样:service apache2 restart

没有错误了,问题解决!


嗨,我在Windows操作系统中遇到了同样的问题。这些命令在我的情况下不起作用。所以,请问你能帮我解决在Windows操作系统中如何修复这个问题吗? - srihitha
仍然显示相同的错误 :( - trueToastedCode

27

命令无效 'SSLEngine',可能是拼写错误或模块未包含在服务器配置中。

简单来说:

如果您的“虚拟主机”尝试使用SSL但未在Apache上安装SSL模块,则很可能会发生此错误。

情况1:对于Centos(Linux发行版),请运行:

yum install mod_ssl openssh

案例二:针对Ubuntu或Debian(Linux发行版),运行:

sudo a2enmod ssl 

它应该安装并配置好一切(您的conf.modules.d文件夹中应出现一个新的* -ssl.conf文件)


22
sudo a2enmod ssl 

重启Apache服务就可以解决问题。


5
sudo yum install mod_ssl
sudo a2enmod ssl
sudo apachectl restart

5
  1. 在编辑网站配置文件时,您必须在启用网站之前测试配置,以确保其语法正确。使用下面的命令来测试配置。
apache2ctl configtest

或者

sudo apache2ctl configtest

如果语法正确,您将获得类似下面的响应:

在此输入图片描述
  1. 如果收到SSLEngine: Invalid command错误,请运行以下命令并返回第一步,解决所有语法错误,直到出现Syntax OK。
sudo a2enmod ssl
  1. 使用以下命令重启apache
sudo apachectl restart

希望这样解决了错误。


2
尝试以下解决方案:
  1. 打开“你的Apache文件夹”/conf下的httpd.conf文件。
  2. 使用文本编辑器中的CTRL+f查找以下行:#LoadModule ssl_module modules/mod_ssl.so
  3. 删除#(取消该行注释)。
  4. 保存并重新启动您的Apache。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接