ELB 后面的 Symfony2 重定向到 http 而不是 https

2024-03-19

Issue:

  • 用户登录https://example.com/login https://example.com/login
  • 认证已获批准
  • 根据 security.yaml 中的配置,Symfony 在登录后将用户重定向到个人资料页面。
  • 但它会将它们重定向到错误的网址http://example.com/homepage http://example.com/homepage

安全.yml:

security:

    encoders:
        FOS\UserBundle\Model\UserInterface: sha512

    role_hierarchy:
        ROLE_ADMIN:       ROLE_USER
        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

    providers:
        fos_userbundle:
            id: fos_user.user_provider.username_email

    firewalls:
        main:
            pattern:    ^/
            form_login:
                check_path: /login_check
                login_path: /login
                default_target_path: /profile
                provider: fos_userbundle
            logout:
                path:   /logout
                target: /splash
            anonymous: ~

    access_control:
        - { roles: ROLE_USER, requires_channel: https }
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY, requires_channel: https }

    acl:
        connection: default

环境架构:

Server1 和 Server2 拥有 Symfony2 应用程序。

问题:

如何强制 Symfony 使用 https 协议而不是 http 生成重定向 URL?

到目前为止,我已经查看了这些文档,并且该解决方案在我的情况下不起作用:

  • http://symfony.com/doc/current/cookbook/routing/scheme.html http://symfony.com/doc/current/cookbook/routing/scheme.html

看一眼

供应商/symfony/symfony/src/Symfony/Component/HttpFoundation/Request.php

AWS ELB 使用 HTTP_X_FORWARDED_PROTO 和 HTTP_X_FORWARDED_PORT,而 Symfony 则查看 X_FORWARDED_PROTO 和 X_FORWARDED_PORT 标头来判断连接及其安全状态。

您可以尝试更改 trustHeaders 中的这些键,尽管我不建议直接更改它们,但找到一种方法来覆盖它们。

protected static $trustedHeaders = array(
        self::HEADER_CLIENT_IP    => 'X_FORWARDED_FOR',
        self::HEADER_CLIENT_HOST  => 'X_FORWARDED_HOST',
        self::HEADER_CLIENT_PROTO => 'HTTP_X_FORWARDED_PROTO',
        self::HEADER_CLIENT_PORT  => 'HTTP_X_FORWARDED_PORT',
    );

参考 -http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#x-forwarded-for http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#x-forwarded-for

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ELB 后面的 Symfony2 重定向到 http 而不是 https 的相关文章

  • CodeIgniter:使用多维 POST 数据验证表单

    所以框架是CodeIgniter 2 0 2 我有一个表单 其中包含与数据库中的行相对应的字段组 字段名称的格式为 opt 0 foo opt 0 bar opt 1 foo opt 1 bar etc 索引 1 2等 并不对应于数据库中的
  • 正则表达式检查确切的字符串是否存在,包括#

    新问题正如 Asaph 在上一个问题中所建议的 正则表达式检查确切的字符串是否存在 https stackoverflow com questions 2824291 regex to check if exact string exist
  • 在 Laravel 视图中使用 CSS?

    我刚刚开始学习 Laravel 并且可以掌握控制器和路由的基础知识 我的操作系统是 Mac OS X Lion 它位于 MAMP 服务器上 我的routes php代码 Route get function return View make
  • 使用 php 变量更改 css 类

    这里需要您的帮助 正如标题所示 我正在尝试使用 PHP 变量更改 css 类 所以基本上我想创建一个回显某些代码的循环 但我希望第一个循环中的 div 类有所不同 它应该被隐藏 这是我为使问题变得清晰而编写的简化代码 我不知道错误在哪里 请
  • PHP - SQLite 与 SQLite3

    我已经使用 SQLite 2 8 17 制作了一个 Web 应用程序 我现在才发现有一个 SQLite3 在制作 Web 应用程序时 它以某种方式逃避了我的注意 可能是由于缺少 php 函数的文档 我想知道 使用 SQLite3 比 SQL
  • mvc 中的模型(最佳实践,PHP)

    我知道有很多关于 MVC 和最佳实践的文章和问题 但我找不到这样的简单示例 假设我必须用 PHP 开发一个 Web 应用程序 我想遵循 MVC 模式 没有框架 该应用程序应该有一个简单的书籍 CRUD 我想从控制器获取我商店中的所有书籍 保
  • laravel Blade 模板不渲染

    进入 Laravel 后 我尝试使用 Blade 模板 但它没有渲染 我的所有示例都来自 Laravel 文档 UPDATE 所以这是我的master blade php 文件位于资源 gt 视图 gt master blade php y
  • PHP三元运算符错误[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 三元运算符未按预期工作 https stackoverflow com questions 14214427 php ternary operator not working as expec
  • 如何使用 PHP 调整缩略图大小时提高图像质量?

    我在网上找到了这个脚本 它可以从图像中创建缩略图 但创建的缩略图质量很差 如何提高图像的质量 有没有更好的方法来创建缩略图 如果有的话 您能给我指点一下如何使用 PHP 创建缩略图的教程吗 这是下面的代码
  • 回显 HTML 并内置 PHP

    请帮助我使用 echo 与 HTML 和 PHP 使用数组范围将其转换为动态
  • 使用 htmlpurifier 将具有 of 类的元素列入白名单

    我只想仅当 span 元素在 htmlpurifier 中具有特定类时才允许它 有谁知道该怎么做 现在我有 config gt set HTML Allowed a href p ol li ul img src blockquote em
  • 使用 TCPDF PHP 库横向显示的图像

    我正在使用 TCPDF PHP 库生成包含照片的 PDF 文档 由于某种原因 某些照片在我的计算机和网络上正确显示 但当我将该图像放入 PDF 中时 它似乎是横向的 这只发生在某些图像上 大多数图像显示正确 下面是在 PDF 中横向显示的示
  • php_zip 在 php 5.3.5 中不存在

    我正在使用 PHPExcel 要求之一是我需要启用 php zip 如果您需要 PHPExcel 来处理 xlsx 或 ods 文件 您将需要 邮政编码扩展名 我正在使用 PHP v5 3 5 并在我的php ini文件中 我有以下几行 e
  • 自动解析 PHP,将 PHP 代码与 HTML 分离

    我正在开发一个大型 PHP 代码库 我想将 PHP 代码与 HTML 和 JavaScript 分开 我需要对 PHP 代码进行多次自动搜索和替换 对 HTML 进行不同的搜索和替换 对 JS 进行不同的自动搜索和替换 有没有一个好的解析器
  • 在 htaccess 文件中使用 RewriteMap

    如何在 htaccess 文件中使用 RewriteMap 指令 当我把它放在那里时 我收到 此处不允许 RewriteMap 错误 我知道当将其放入 httpd conf 或虚拟主机配置文件中时 此错误将会消失 但我想知道是否可以将其放入
  • PHP 中的 GOTO 命令?

    我听说 PHP 计划引入 goto 命令的传言 它应该做什么 我尝试搜索了一下 但没有找到任何具有描述性的内容 我明白这不会是 GOTO 10 类似命令 They are not adding a real GOTO but extendi
  • 如何使用php api检查电子邮件或手机paypal帐户状态?

    如何使用 php api 检查电子邮件或手机 Paypal 帐户状态 好的 如果我想汇款到此电子邮件贝宝 email protected cdn cgi l email protection 或手机 1234567890 汇款前 我可以检查
  • 如何在 PHP 中使用 foreach 循环仅回显一次特定的多个相同记录?

    我在 PHP 中使用 foreach 循环得到这些输出 现在 foreach 内部的输出如下所示 PHP代码 table thead tr th ACCOUNT NUMBER th th CATEGORY th th AMOUNT th t
  • facebook og:image 不会从与 URL 相呼应的 php 文件中获取图像

    facebook OG 从回显 URL 获取图像 这可能吗 因为我包含了一个 php 文件 它将回显图像 URL 但是当我签入共享调试器时 内容为空 我的元标签 gt 和 php 文件
  • 在 php 中回显 JSON 数据

    我正在尝试回显一些 JSON 数据 问题是数据包含变量 但我的代码没有将变量放入字符串中 这是我的代码 status row Status priority row Priority echo status status priority

随机推荐

  • 使用 MSBuild 时不会构建私有访问器

    我的构建服务器使用 MSBuild 来构建我的应用程序 我们的单元测试需要访问一些私有成员进行测试 因此我们使用内置的私有访问器 Visual Studio 没有问题 但是当我们将代码推送到构建服务器时 我们收到错误 MyTest cs 9
  • 从数组中删除非唯一行

    我有一个数组a如下 a 1 2 3 4 1 2 我想删除在中多次出现的所有行a并得到c c 3 4 请注意 这与保留唯一行不同 因为我根本不希望出现重复行 我怎样才能做到这一点 第三个输出为unique https www mathwork
  • 重新编译CHM文件

    我正在编写一个脚本 该脚本应该能够向 chm file 反编译后使用hh exe decompile outputFolder fileName chm命令 我得到 html 文件和其他 2 个文件 hhc and hhk扩大 编辑 htm
  • Android -fragmentTransaction.replace() 不适用于支持库 25.1.0

    我使用片段替换 FrameLayoutfragmentTransaction replace Layout
  • SQL Server 表与索引的同义词

    我在 SQL Server 2005 的单个实例上有多个数据库 我在一个数据库上创建了一个同义词来访问另一个数据库上的表 并且在编写查询时 我想使用特定的索引 但是 在评估执行计划 它似乎没有使用它 如果我编写查询来显式访问数据库 它可以工
  • Flask-login:如果login_manager的session_protection设置为“strong”,请记住我不工作

    我正在使用 Flask login 将会话管理集成到我的 Flask 应用程序中 但是如果我设置了 记住我 功能就不起作用会话保护 to strong 但是 如果设置为 它绝对可以正常工作basic 用户加载器 login manager
  • 我可以在 cpp 中使用带有向量的嵌套循环吗?

    我有一个 cpp 问题 我不知道出了什么问题 也许你可以帮助我 我正在尝试实现图表的数据结构 在此图中 我将连接一些具有较小欧氏距离的节点 但在第二次迭代时 我的迭代器将指向 0x0 仅当我将这两个节点的距离给出到 std cout 时 才
  • dotnetopenid 教程 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 非常基本的问题 但是有人可以给我指点有关如何实现和使用 dotnet openid 的建设性教程吗 我正在努力寻找任何真正的文档来解释如何
  • 无法连接到 gmail smtp linode django apache2 设置

    您好 我在连接到 google smtp 服务器时遇到困难 上下文是 每当用户填写表单时 我的程序都会自动通过电子邮件将反馈发送到我的 Gmail 帐户 除了程序卡在 send mail 函数中之外 一切正常 我尝试这样做 telnet s
  • 如何使用 Java 8 流 API 以 O(N) 时间和 O(C) 空间复杂度从列表中仅删除一个最大值(最小值)

    以下代码用于从列表中仅删除一个最大值 在本例中为第一个值 但这无关紧要 这是O n 及时和O n 在空间中 超出输入 public List
  • PHP Nginx error_log 被截断

    我正在运行 nginx 和 PHP 5 5 以及我的所有error log当传递的字符串很长时 消息会被截断 我已经更新了我的php ini文件并将日志最大长度从 1024 增加到 0 无最大值 但这种情况仍在发生 如果您希望日志行长度超过
  • 如何在 Python 中进行 F 检验来比较嵌套线性模型?

    我想比较两个嵌套线性模型 将它们称为 m01 和 m02 其中 m01 是简化模型 m02 是完整模型 我想做一个简单的 F 检验 看看完整模型是否比简化模型增加了显着的效用 这在 R 中非常简单 例如 mtcars lt read csv
  • 如果图像太小,使用 PHP 调整图像大小

    我允许用户上传 如果图像太小 我想放大它们 低质量不是问题 我需要将最小边变为 150px 并放大其他尺寸以保持纵横比 我需要让它适用于 jpg gif 和 png 文件 任何指示将不胜感激 我正在努力寻找有关使图像变得更大的任何东西 正如
  • 删除已终止用户提出的会议请求

    需要一次从多个终止用户的所有会议室中删除终止用户发出的会议请求 下面是我构建的脚本 用于从所有会议室中删除两个已终止用户的会议请求 我用了OR如果我想删除两个已终止用户的会议 种类 来自 sasi 或 Kalai 的日历 请使用运算符 如何
  • Passport.js 不适用于手动表单数据发布请求角度

    我已经以角度创建了一个表单 单击 提交 按钮后 我正在发送一个发布请求Content Type带值的标头application x www form urlencoded onSubmit user User let headers new
  • 设置Windows中每个进程的最大CPU使用率[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有没有办法在 Windows 7 中设置进程的最大 CPU 使用率 您可以查看 Windows Server 2008 R2 和 Windows 7
  • 使用 Windows 窗体在按钮上显示工具提示

    如何使用按钮在按钮上显示工具提示Windows 窗体 http en wikipedia org wiki Windows Forms 工具提示是一个singleWinForms 控件 用于处理显示工具提示multiple单个表单上的元素
  • Spring Boot MVC 的 web.xml 等效吗?

    JSP规范让我可以服务 html使用以下方法将文件作为 JSP 即让容器将它们作为 JSP 文件处理
  • 动态需要 React Native 图像

    我正在努力在我的反应原生项目中加入一些代表国家的旗帜 我发现你不能在 React Native 中动态地要求图像 如下例所示 require assets flags 32 countryCode png 鉴于我发现的如此回应here ht
  • ELB 后面的 Symfony2 重定向到 http 而不是 https

    Issue 用户登录https example com login https example com login 认证已获批准 根据 security yaml 中的配置 Symfony 在登录后将用户重定向到个人资料页面 但它会将它们重