Apache 我对HTTPS站点的VirtualHost重定向已中断

Apache 我对HTTPS站点的VirtualHost重定向已中断,apache,redirect,virtualhost,apache2.2,virtual-hosts,Apache,Redirect,Virtualhost,Apache2.2,Virtual Hosts,Apache/2.2.15,CentOS Linux 我有一个网站,我希望整个网站是SSL加密的所有时间。通常,我不使用mod_rewrite来执行www/non-www重定向;我只使用了VirtualHosts和Redirect指令 但是,尝试在我的HTTPS站点上执行此操作会在所有浏览器中返回一个通用SSL连接错误。这是我的vhost文件(域名和IP地址已更改): NameVirtualHost 192.168.0.256:80 NameVirtualHost 192.168.0.256:4

Apache/2.2.15,CentOS Linux

我有一个网站,我希望整个网站是SSL加密的所有时间。通常,我不使用mod_rewrite来执行www/non-www重定向;我只使用了
VirtualHost
s和
Redirect
指令

但是,尝试在我的HTTPS站点上执行此操作会在所有浏览器中返回一个通用SSL连接错误。这是我的vhost文件(域名和IP地址已更改):

NameVirtualHost 192.168.0.256:80
NameVirtualHost 192.168.0.256:443
服务器名www.example.com
ServerAlias example.com
重定向/https://www.example.com/
# ############################
#这个街区打破了一切
# ############################
ServerName example.com:443
重定向/https://www.example.com/
DocumentRoot/var/www/example\u site/htdocs/
服务器名www.example.com:443
ErrorLog/var/www/logs/example\u site/error\u log
斯伦金安
SSLCertificateFile/etc/httpd/ssl.crt/www.example.com.crt
SSLCertificateKeyFile/etc/httpd/ssl.key/www.example.com.key
SSLCACertificateFile/etc/httpd/ssl.crt/www.example.com.ca-bundle
SetEnvIf用户代理“*MSIE.*”\
nokeepalive ssl不干净关闭\
降级-1.0力响应-1.0
选项如下符号链接多视图
允许超越所有
发展+标准
标有“此块破坏一切”的块似乎是罪魁祸首。当该
VirtualHost
块被注释掉时,站点按预期加载,一切正常。但我真的想/需要将非www重定向到www,当该块被启用时,我在每次尝试加载站点时都会得到:


错误日志似乎没有显示任何有用的内容。有人能从中看出到底出了什么问题吗?

端口443始终需要附加证书。即使只是一个简单的重定向。连接->SSL->数据传输

NameVirtualHost 192.168.0.256:80
NameVirtualHost 192.168.0.256:443

<VirtualHost 192.168.0.256:80>
    ServerName www.example.com
    ServerAlias example.com
    Redirect / https://www.example.com/
</VirtualHost>

# ############################
# This block breaks everything
# ############################
<VirtualHost 192.168.0.256:443>
   ServerName example.com:443
   Redirect / https://www.example.com/
</VirtualHost>

<VirtualHost 192.168.0.256:443>
    DocumentRoot /var/www/example_site/htdocs/
    ServerName www.example.com:443
    ErrorLog /var/www/logs/example_site/error_log
    SSLEngine On
    SSLCertificateFile /etc/httpd/ssl.crt/www.example.com.crt
    SSLCertificateKeyFile /etc/httpd/ssl.key/www.example.com.key
    SSLCACertificateFile /etc/httpd/ssl.crt/www.example.com.ca-bundle
    SetEnvIf User-Agent ".*MSIE.*" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
    <Directory /var/www/example_site/htdocs/>
        Options FollowSymLinks MultiViews
        AllowOverride All
    </Directory>
    <Files ~ "\.php$">
        SSLOptions +StdEnvVars
    </Files>
</VirtualHost>