HTTPS和HTTP合并的.htaccess(https and http combined .ht

2019-09-16 13:49发布

我有后续的问题。

我有一个网站和目录/成员/管理员我有这迫使这些URL去一个https的.htaccess://其他所有网址都被迫去正常https://开头

现在,对于/构件,其为https://我在页面到在导入页面/js/script.js的引用,但ofcourse这个目录/ JS被迫正常的http://,而页面显示在https://开头

Internet Explorer用户显示一个弹出,如果他们想查看非安全内容的安全页面,如果他们点击是,它的确定。 如果他们点击否,则JavaScript不工作。

该/ JS在正常使用的http://网站,并在/成员安全的网站。 这也是为/ images目录的情况下

所以我不知道如何解决这个问题。 除了说/ JS和/图像可以是HTTPS或HTTP。 但是,我对如何在htaccess文件配置此没有任何线索。

任何帮助将非常感激!

这是我现在使用的htaccess的文件:

  #Turn SSL on everything, except members and admin
  RewriteCond %{HTTPS} =off
  RewriteCond %{REQUEST_URI}  ^(/members|/admin)
  RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

  # Turn SSL off everything, except members and admin
  RewriteCond %{HTTPS} =on
  RewriteCond %{REQUEST_URI} !^(/members|/admin)
  RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Answer 1:

有相当多的方法。 这里仅仅是少数。

号码1.您的规则之前,补充一点:

# do not do anything for js/css/image files
# (will affect ALL such files in ALL folders)
RewriteRule \.(css|js|jpe?g|gif|png|ico)$ - [L]

上面的规则将离开协议作为是所有的CSS / JS /图像文件(在网站的任何地方)

2号。您的规则之前,补充一点:

# do not do anything to any files in css/js/images folders
RewriteRule ^(css|js|images)/ - [L]

上面的规则将离开协议作为为在CSS / JS /图像文件夹的所有文件(例如example.com/js/main.jsexample.com/images/logo.png甚至example.com/js/compress.php

如果你想 -你可以将它们合并成单一的规则(更具体) -但这是不必要的(从我的观点)。



Answer 2:

我面临着同样的问题的一年回来。 之所以能够在结束对我自己终于到达。

看看我的问题和答案的htaccess(HTTPS到HTTP)



Answer 3:

在您的图像和js目录创建一个有以下自己.htacess文件: -

RewriteEngine off

这将关闭写入该文件夹中的所有文件。

在你的HTML不指定链接上的域,这样做/js/myscript.js代替http://mydomain.com/js/myscript.js这样它只会继承相同的协议,因为他们正在查看的页面上。



文章来源: https and http combined .htaccess