Apache 相对路径的SSL?

Apache 相对路径的SSL?,apache,.htaccess,ssl,web,https,Apache,.htaccess,Ssl,Web,Https,我注意到,当使用HTTPS访问站点时,我在JS控制台中尝试从以下相对路径包含CSS或JS文件时出现错误: <link rel="stylesheet" type="text/css" href="css/demo.css?id=14" /> 混合内容:通过HTTPS加载了“”处的页面,但请求了不安全的样式表“”。此请求已被阻止;内容必须通过HTTPS提供 对于这种情况,理想的解决方案是什么 我应该强制将所有HTTP访问重定向到HTTPS吗 或者有没有办法告诉服务器使用HTTP

我注意到,当使用HTTPS访问站点时,我在JS控制台中尝试从以下相对路径包含CSS或JS文件时出现错误:

<link rel="stylesheet" type="text/css" href="css/demo.css?id=14" />

混合内容:通过HTTPS加载了“”处的页面,但请求了不安全的样式表“”。此请求已被阻止;内容必须通过HTTPS提供

对于这种情况,理想的解决方案是什么

  • 我应该强制将所有HTTP访问重定向到HTTPS吗
  • 或者有没有办法告诉服务器使用HTTPS为所有相关路径提供服务

相对链接将使用基本URL中的协议和主机。基本URL通常是可以在URL栏中看到的URL。但是可以使用显式更改基本URL

这意味着,如果您在页面中设置了以http作为协议的基本URL,则即使您使用https访问了站点,并且引用是相对的,它仍将使用http而不是https,例如:

<base href="http://example.com/">

要修复此问题,请删除基本标记或将其更改为使用https而不是http:

<base href="https://example.com">


它应该使用原始URL中的协议和主机(即
https://mysiste.com/
在本例中),除非您使用。检查您的代码中是否有此标记,然后将其删除或将其设置为https URL。基本标记!就这样!!谢谢你!请添加它作为答案,我将接受它!