Ubuntu 14.04 Apache+;SSL服务器,如何配置清漆

Ubuntu 14.04 Apache+;SSL服务器,如何配置清漆,apache,magento,ssl,nginx,varnish,Apache,Magento,Ssl,Nginx,Varnish,我有一个运行在Ubuntu 14.04服务器上的Magento,带有Apache2和SSL。 我已经安装了Varnish,但不知道如何在不使用Nginx的情况下使用SSL进行设置。 这是我当前的vhost文件 <VirtualHost *:443> ServerName mysite.com ServerAlias www.mysite.com ServerAdmin webmaster@localhost DocumentRoot /var

我有一个运行在Ubuntu 14.04服务器上的Magento,带有Apache2和SSL。 我已经安装了Varnish,但不知道如何在不使用Nginx的情况下使用SSL进行设置。 这是我当前的vhost文件

    <VirtualHost *:443>

    ServerName mysite.com
    ServerAlias www.mysite.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/mysite.com

    <Directory /var/www/mysite.com/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    </Directory>

    SSLEngine on
    SSLCertificateFile /home/ssl/mysite_com.crt
    SSLCertificateKeyFile /home/ssl/mysite.com.key
    SSLCACertificateFile /home/ssl/mysite_com.ca-bundle

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    </VirtualHost>
    <VirtualHost *:80>
    ServerName mysite.com
    RewriteEngine On
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=permanent]
    </VirtualHost>

服务器名mysite.com
ServerAlias www.mysite.com
服务器管理员webmaster@localhost
DocumentRoot/var/www/mysite.com
选项索引跟随符号链接多视图
允许超越所有
斯伦金安
SSLCertificateFile/home/ssl/mysite\u com.crt
SSLCertificateKeyFile/home/ssl/mysite.com.key
SSLCACertificateFile/home/ssl/mysite_com.ca-bundle
ErrorLog${APACHE_LOG_DIR}/error.LOG
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
服务器名mysite.com
重新启动发动机
重写规则(.*)https://%{HTTP_HOST}%{REQUEST_URI}[L,R=permanent]

简短回答,您无法使用SSL设置Varnish,因为Varnish不支持它

您有2个选项

  • 在Varnish前面设置Nginx(或其他一些SSL终止符),它充当反向代理,并通过HTTP将请求转发给Varnish

  • 在当前Apache2服务器(支持SSL)和Varnish之间拆分流量。端口80上的HTTP流量转到Varnish,端口443上的HTTPS流量转到Apache2


  • 使用您当前的Apache,我将执行以下操作:

    将站点配置为在另一个端口(例如8888)中侦听

    <VirtualHost *:8888>
       ServerName mysite.com
       ServerAlias www.mysite.com
       ServerAdmin webmaster@localhost
       DocumentRoot /var/www/mysite.com
    
      <Directory /var/www/mysite.com/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
      </Directory>
    </VirtualHost>
    
    最后配置Varnish后端以使用端口8888

    backend default {
      .host = "127.0.0.1";
      .port = "8888";
    }
    

    我投票结束这个问题,因为堆栈溢出是一个问答网站。你的问题不是关于编程。也许你应该把它贴上去?
    sudo a2enmod headers proxy proxy_http proxy_html
    
    backend default {
      .host = "127.0.0.1";
      .port = "8888";
    }