尝试在OpenSUSE桌面上设置SSL时遇到大问题。

通常,apache正在监听端口443,但是当我尝试转到

https://localhost


浏览器报告SSL问题:“ ssl_error_rx_record_too_long”。当我尝试执行在计算机上创建的任何虚拟主机时,也会发生相同的情况(所有虚拟主机都基于ip)
我可以通过以下方式手动解决此问题:

cd /etc/apache2/vhosts.d
cp vhost-ssl.template mySSL-host.conf
apache2ctl restart


那解决了我的https问题,但是所有虚拟主机都消失了,它们都指向本地主机。
当我重新启动YaST时-虚拟主机重新出现,但是mySSL-host.conf文件消失了,并返回https问题。

使用YaST使用虚拟主机设置SSL的正确方法是什么,或者至少如何使其与YaST兼容?

最佳答案

ssl_error_rx_record_too_long表示证书配置错误。

确保您的系统中安装了正确的SSL证书。
没有这些,HTTPS将无法运行。您可以从startssl.com之类的公司获得它们

确保已启用SSL标志:

(针对特定用途)

a2enflag SSL
a2disflag NOSSL


现在让我们看一下/etc/apache2/vhosts.d/mysslhost.conf中的示例配置

<VirtualHost *:443>

        #  General setup for the virtual host
        DocumentRoot "/srv/www/mysite/"
        ServerName www.mysite.com
        ServerAdmin [email protected]
        ErrorLog /var/log/apache2/error_log
        TransferLog /var/log/apache2/access_log
<Directory />
 Options FollowSymLinks
 AllowOverride None
</Directory>

 <Directory /srv/www/mysite/>
  Options +FollowSymlinks
  Order allow,deny
  Allow from all
 </Directory>


 SSLEngine on
 SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM  EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384  EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA 3DES RC4 !aNULL !eNULL  !LOW !MD5 !EXP !PSK !SRP !DSS +3DES 3DES +RC4 RC4"
 SSLHonorCipherOrder on
 SSLCertificateFile /etc/apache2/ssl/ssl.crt
 SSLCertificateKeyFile /etc/apache2/ssl/ssl.nopassword.key
 SSLCertificateChainFile /etc/apache2/ssl/sub.class1.server.ca.pem
 SSLCACertificateFile /etc/apache2/ssl/ca.pem

#SSLUseStapling on
#SSLStaplingResponderTimeout 5
#SSLStaplingReturnResponderErrors off


 CustomLog /var/log/apache2/access.log combined
 ServerSignature On
</VirtualHost>

</IfDefine>
</IfDefine>


然后运行rcapache2重启

关于apache - 使用OpenSUSE/Yast用/SSL设置Apache,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24888407/

10-13 09:10