在Ubuntu 14.04/Apache2上为Vhost启用SSL
我正试图在我的Ubuntu服务器上的一个站点上启用SSL。我在互联网上到处都能找到几乎相同的几个命令,这看起来很简单,但出于某种原因,我似乎无法正确地使用它 以下是我的步骤(所有步骤都以root/sudo权限完成) 启用SSL模块在Ubuntu 14.04/Apache2上为Vhost启用SSL,apache,ssl,Apache,Ssl,我正试图在我的Ubuntu服务器上的一个站点上启用SSL。我在互联网上到处都能找到几乎相同的几个命令,这看起来很简单,但出于某种原因,我似乎无法正确地使用它 以下是我的步骤(所有步骤都以root/sudo权限完成) 启用SSL模块 a2enmod ssl 为Apache和用户/站点所有者有权访问的我的密钥创建一个控制器 sudo mkdir /etc/apache2/ssl 使用所属域的详细名称制作所需的密钥 sudo openssl req -x509 -nodes -days 365 -
a2enmod ssl
为Apache和用户/站点所有者有权访问的我的密钥创建一个控制器
sudo mkdir /etc/apache2/ssl
使用所属域的详细名称制作所需的密钥
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/apache2/ssl/example.key -out /etc/apache2/ssl/example.crt
我已经为这个站点创建了一个现有的.conf文件,如下所示:
(我还将我的/home目录设置为web目录)
去了,但我的SSL没有什么好运气
我意识到我下面的教程正在更新默认的apache文件,我正在尝试创建另一个虚拟主机,这样它会有所不同,但我只是创建一个额外的vhost,我想它的工作原理与添加一个额外的.conf文件完全相同
该站点在没有SSL的情况下运行得很好,因此我的apache配置可能是罪魁祸首,这是有道理的,我似乎无法准确地找出我在哪里犯了错误。任何帮助都将不胜感激,谢谢 假设您发布的代码来自default-ssl.conf,请尝试以下操作:
a2dissite default-ssl.conf
然后
然后
我不知道该证书是自签名的,因此我必须在浏览器中授权该证书 有一个非常棒的工具,可以为您处理所有SSL配置,我强烈建议您使用它-查看
我假设您在配置的其他地方有一个
Listen 443
和一个NameVirtualHost*:443
?(还有,什么是“SSL不走运”?它会抱怨证书吗?它根本就没有给你任何连接吗?)服务器日志会给你任何线索吗?
<IfModule mod_ssl.c>
<VirtualHost *:443>
DocumentRoot /home/user
<Directory /home/user>
AllowOverride All
</Directory>
ServerName example.com
ServerAlias www.example.com
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/example.crt
SSLCertificateKeyFile /etc/apache2/ssl/example.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-6]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
ErrorLog ${APACHE_LOG_DIR}/example.com.error.log
CustomLog ${APACHE_LOG_DIR}/example.com.access.log common
AddType application/x-httpd-php .php
<Files 'xmlrpc.php'>
Order Allow,Deny
deny from all
</Files>
</VirtualHost>
</IfModule>
service apache2 restart
a2dissite default-ssl.conf
a2ensite default-ssl.conf
service apache2 reload