无法在Apache中安装SSL

时间:2017-08-01 16:56:10

标签: apache ubuntu tomcat ssl server

我的服务器是Ubuntu,我正在运行Apache2。我正在使用apache指向我在tomcat中加载的网络应用。以下是我的000-default.conf文件。

<VirtualHost *:*>
    ProxyPreserveHost On

    # Servers to proxy the connection, or;
    # List of application servers:
    # Usage:
    # ProxyPass / http://[IP Addr.]:[port]/
    # ProxyPassReverse / http://[IP Addr.]:[port]/
    # Example:
    ProxyPass / http://0.0.0.0:8080/
    ProxyPassReverse / http://0.0.0.0:8080/

    ServerName localhost
</VirtualHost>

<VirtualHost *:443>

    SSL Engine On

    # Set the path to SSL certificate
    # Usage: SSLCertificateFile /path/to/cert.pem
    SSLCertificateFile /etc/apache2/ssl/STAR_myglukose_com.crt

    # Servers to proxy the connection, or;
    # List of application servers:
    # Usage:
    # ProxyPass / http://[IP Addr.]:[port]/
    # ProxyPassReverse / http://[IP Addr.]:[port]/
    # Example:
    ProxyPass / http://0.0.0.0:8080/
    ProxyPassReverse / http://0.0.0.0:8080/

    # Or, balance the load:
    # ProxyPass / balancer://balancer_cluster_name

</VirtualHost>

我指向Tomcat很好,但问题在于SSL。在为443创建虚拟主机后,我无法重启apache。我收到了一个错误。它要求我参考journalct1 -xe。该文件如下。

Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]:  * Starting Apache httpd web server apache2
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]:  *
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]:  * The apache2 configtest failed.
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: Output of config test was:
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: [Tue Aug 01 16:45:20.638254 2017] [proxy_html:notice] [pid 27567] AH01425: I18n support in mod_proxy_html requires mod_xml2enc. Without it, non-ASCII characters in proxied pages are likely to display incorrectly. it, n
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: AH00526: Syntax error on line 19 of /etc/apache2/sites-enabled/000-default.conf:
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: Invalid command 'SSL', perhaps misspelled or defined by a module not included in the server configuration
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: Action 'configtest' failed.
Aug 01 16:45:20 ip-172-31-5-246 apache2[27556]: The Apache error log may have more information.
Aug 01 16:45:20 ip-172-31-5-246 systemd[1]: apache2.service: Control process exited, code=exited status=1
Aug 01 16:45:20 ip-172-31-5-246 sudo[27550]: pam_unix(sudo:session): session closed for user root
Aug 01 16:45:20 ip-172-31-5-246 systemd[1]: Failed to start LSB: Apache2 web server.
-- Subject: Unit apache2.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit apache2.service has failed.

我尝试了各种方法解决此问题,包括将SSL Engine写为SSLEngine,执行sudo a2enmod ssl等,但同样的错误也会出现。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

错误消息清楚地指出了问题:

AH00526: Syntax error on line 19 of /etc/apache2/sites-enabled/000-default.conf:
Invalid command 'SSL', perhaps misspelled or defined by a module not included in the server configuration

要解决问题,请查看特定行:

SSL Engine On

并通过删除SSL和引擎之间的空间来修复它:

SSLEngine On