我正在尝试在 Saucy EC2 实例上为网站制作 SSL 包装器(并最终将所有 HTTP 请求重定向到 HTTPS 域)。目前,Apache 重新启动时没有报告错误,并且它按预期(目前)提供 HTTP 请求,但尝试的 SSL 连接没有响应。目前,这是此计算机上通过 HTTPS 而不是 HTTP 传递的唯一(尝试)站点。
我的 VirtualHost 配置文件 ssl.conf 是:
#NameVirtualHost *:443
<VirtualHost *:443>
ServerName pragmatometer.com
DocumentRoot /home/jonathan/mirror/professional
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
ServerAlias www.pragmatometer.com analyticalnoticeboard.com www.analyticalnoticeboard.com logisticmvc.com www.logisticmvc.com
ServerAdmin [email protected]
DocumentRoot /home/jonathan/classicorthodoxbible.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options ExecCGI Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/author.cjshayward.error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
Alias /media/ /home/jonathan/pragmatometer/media/
ProxyPass /media/ !
ProxyPass / http://localhost:8000/
ProxyPassReverse / http://localhost:8000/
</VirtualHost>
我的证书来自 StartSSL。
这些是否能解释为什么尝试 HTTPS 连接会挂起?
答案1
需要检查以下几点:
- 您是否在 EC2 实例的安全上下文中打开了端口 443?
- 您是否在实例本身上设置了防火墙端口 443?
- Apache 是否在监听端口 443?(您可以使用 netstat -nlp 检查)
- 如果没有,您需要在全局 Apache 配置中添加 Listen 443 指令。
希望这可以帮助!