我的服务器是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
等,但同样的错误也会出现。
我该如何解决这个问题?
答案 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