epilgrim/modify-request-headers-bundle

Symfony 扩展包,用于注入请求头

v0.1.7 2013-06-20 19:28 UTC

This package is not auto-updated.

Last update: 2024-09-23 12:08:20 UTC


README

此扩展包允许向 Request 对象添加任意请求头。

开发此扩展包的原因是我的应用程序位于反向代理之后,该代理没有设置 x-forwarded-proto 头。因此,通过邮件发送的链接协议不正确。

特性包括

  • 设置自定义头
  • 设置监听器在内核事件时运行的优先级

Build Status

安装

  1. 使用 composer 下载 EpilgrimModifyRequestHeadersBundle
  2. 启用扩展包
  3. 配置应用的 config.yml

步骤 1:使用 composer 下载 EpilgrimModifyRequestHeadersBundle

在 composer.json 中添加 EpilgrimModifyRequestHeadersBundle

{
    "require": {
        "epilgrim/modify-request-headers-bundle": "*"
    }
}

然后运行

$ php composer.phar update

步骤 2:启用扩展包

在内核中启用扩展包

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Epilgrim\ModifyRequestHeadersBundle\EpilgrimModifyRequestHeadersBundle(),
    );
}
  1. 配置应用的 config.yml
# app/config/config.yml
epilgrim_modify_request_headers:
    headers:
        - {name: x_forwarded_proto, value: https}
        - {name: header2, value: value_2}
    listener_priority: 64

您可以添加任意多的头。

注意

需要注意的是,listener_priority 必须设置得高于使用这些头的后续监听器。 例如,如果您修改 x_forwarded_proto,它将被 RouterListener(使用优先级 32 运行)使用。因此,您必须设置更高的值。默认值为 64。如果未将键 epilgrim_modify_request_headers 添加到 app/config/config.yml 中,则不会注册监听器。

许可证

此扩展包遵循 MIT 许可。

报告问题或功能请求

问题和功能请求在 Github 问题跟踪器 中跟踪。