我正在使用PHP开发一个电子商务应用程序。所有页面均通过HTTPS访问,部分页面通过HTTP访问,如首页、类别列表和产品列表。我已经使用htaccess代码重定向。但在HTTPS页面中,它在地址栏中显示屏蔽符号,表示网页部分加密。请建议我如何解决。
Htaccess代码<>之前
########### Load Home, Category, Products and Product Detail page with HTTP ##########
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} index'.php|category|product
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
########### Load other than Home, Category, Products and Product Detail page with HTTPS ##########
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !(index'.php|category|product)
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
这通常是由于从不安全的地方提供图像/javascript/css。
解决这个问题的最简单的方法是将所有的url更改为相对url或删除方案…
好:
<img src="/images/logo.png">
<img src="./images/logo.png">
<img src="//example.com/images/logo.png">
坏:<img src="http://example.com/images/logo.png">
<img src="https://example.com/images/logo.png">
在"https"页面中提供任何来自常规"http"URL的内容总是会触发部分安全警告。
注意:
部分安全页面还有其他可能的原因,但这通常是原因。除此之外,你还可以通过点击地址栏附近的锁图标