【问题标题】:laravel ERR_TOO_MANY_REDIRECTS after adding SSL添加 SSL 后 laravel ERR_TOO_MANY_REDIRECTS
【发布时间】:2017-10-04 02:40:00
【问题描述】:

所以我正在使用 cloudways 和 digitalocean,现在尝试将letsencrypt 添加到我的 laravel 5.4 网络应用程序中......

并且根据 cloudways 中的技术支持,他们说我需要修改我的 .htaccess 才能像这样

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

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

    RewriteEngine On

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

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

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

但在那之后我得到了

ERR_TOO_MANY_REDIRECTS

出了什么问题? cloudways 技术支持也无法提供任何解决方案......所以我有点卡在这里

我之前也做了一些研究,读到我需要添加

If(env(' APP_ENV') !== 'local') { $url->forceSchema('https'); }

在启动函数中进入 app/Providers/AppServiceProvider.php 以使所有请求为 https....

但仍然没有运气......

【问题讨论】:

  • 尝试RewriteCond %{ENV:HTTPS} !=on 而不是RewriteCond %{HTTP:X-Forwarded-Proto} !https
  • 不......仍然无法正常工作......
  • 附加调试参数以查看实际变量内容。 ... https://%{HTTP_HOST}/$1?%{HTTP:X-Forwarded-Proto} ...
  • 嗯还是不行.... >

标签: laravel .htaccess ssl


【解决方案1】:

好的,所以我已经找到了解决方案,我忘记了我的网站也有 cloudflare cdn,并且在加密部分将 SSL 设置为完整模式,只需将其更改为灵活模式,一切正常......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-09
    • 2019-09-21
    • 2020-10-03
    • 2019-06-14
    • 2017-04-30
    • 2020-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多