域1的HTTP在HTTPS下加载域2

时间:2019-04-16 06:27:41

标签: .htaccess http https apache2 ubuntu-14.04

我已将ubuntu 14设置为服务器,并在没有SSL的情况下指向了domain-1,但是当我尝试使用URL中的https://访问domain-1时,它将带我在同一主机上托管的另一个网站(domain-2)配置有SSL而不显示“找不到页面错误”的服务器。

如何避免这种情况?这是我尝试过的事情清单。

  1. .htaccess无法将HTTPS重定向到HTTP,因为未在V-Host文件下为domain-1配置端口443来访问.htacess文件。

  2. 在没有SSL的情况下无法设置<VirtualHost *:443>并在此处写入重定向。

我在下面的代码中做错了什么吗?

domain-1.conf

<VirtualHost *:80>
        ServerAdmin admin@domain-1
    ServerName domain-1
    ServerAlias www.domain-1
    DocumentRoot /var/www/domain-1/

    ErrorLog /var/www/domain-1/error.
    CustomLog /var/www/domain-1/access.log combined
</VirtualHost>

domain-2.conf

<VirtualHost *:80>
        ServerAdmin admin@domain-2
    ServerName domain-2
    ServerAlias www.domain-2
    DocumentRoot /var/www/domain-2/html

        ErrorLog /var/www/domain-2/error.
    CustomLog /var/www/domain-2/access.log combined
</VirtualHost>
<VirtualHost *:443>
       ServerAdmin admin@domain-2
    ServerName domain-2
    ServerAlias www.domain-2
    DocumentRoot /var/www/domain-2/html
    SSLEngine on
   SSLCertificateFile "/var/www/domain-2/ssl/domain-2.crt"
   SSLCertificateKeyFile "/var/www/domain-2/ssl/domain-2.key"
   SSLCACertificateFile "/var/www/domain-2/ssl/domain-2.ca-

        ErrorLog /var/www/domain-2/error_ssl.log
    CustomLog /var/www/domain-2/access_ssl.log combined
</VirtualHost>

1 个答案:

答案 0 :(得分:0)

我认为,借助于.htaccess文件(HTTPS到HTTP重定向),这是解决此错误的一种方法,但我们需要安装自签名证书。

原因?当我们访问domain1.com时,显示的文件来自domain2.com,因此,即使我们在doamin1.com上创建.htaccess重定向,它也不会为了避免这种情况而生效,因此自签名证书将有助于我们从domain1.com访问该文件,然后.htaccess文件上的重定向将生效。

HTTPS到HTTP重定向

RewriteEngine On RewriteCond %{HTTPS} on RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

该视频将帮助您创建自签名证书。

https://www.youtube.com/watch?v=JLTWa62D0y0