【问题标题】:Blocked:Mixed-Content error while loading Laravel CSS and JS in HTTPS阻止:在 HTTPS 中加载 Laravel CSS 和 JS 时出现混合内容错误
【发布时间】:2018-11-17 13:15:16
【问题描述】:

我正在使用 Laravel 5.5.39 版,并使用 ELB 以及来自 Amazon 证书管理器的 SSL 在 AWS 中托管我的实例。加载网站时,它显示安全,几秒钟后它又恢复为不安全,因为我的 css 和 js 在开发者工具中出现“blocked:mixed-content”错误。我的证书是有效的,但 https 不能正常工作,任何帮助将不胜感激?

操作系统-Amazon Linux、Apache - Apache/2.4.27

【问题讨论】:

  • 这可能是 301 重定向的 htaccess 语法问题。向我们展示你的 .htaccess -- 和你的 Laravel config

标签: php laravel https


【解决方案1】:

@Zak,请找到 .htaccess

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On
    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

【讨论】:

  • @Zak,感谢您编辑 .htaccess,这正是我所拥有的,您能否提供您的建议。
【解决方案2】:
【解决方案3】:

混合内容错误是由于您的代码中使用了带有 http 的非 SSL 网址。例如:如果您使用的是 google 字体,例如

<link href="http://fonts.googleapis.com/css?family=Sunflower:300" rel="stylesheet">

在您的站点中是 http 而不是 https,这将导致问题。 请检查您在网站中使用的所有 url 是否有 https 而不是 http。希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2015-11-25
    • 2021-11-21
    • 2017-06-27
    • 2013-12-31
    • 2018-06-28
    • 1970-01-01
    • 2017-07-05
    • 2015-10-11
    • 2017-06-11
    相关资源
    最近更新 更多