wellingguzman/proxy-detection

此包已被弃用,不再维护。作者建议使用 directus/proxy-detection 包。

PSR-7 中间件,从 'X-Forwarded-Proto', 'X-Forwarded-Host' 和 'X-Forwarded-Port' 头部确定方案、主机和端口,并更新请求的 Uri 对象。

0.5.1 2018-12-10 20:24 UTC

This package is auto-updated.

Last update: 2019-02-22 21:35:24 UTC


README

PSR-7 中间件,从 'X-Forwarded-Proto', 'X-Forwarded-Host' 和 'X-Forwarded-Port' 头部确定方案、主机和端口,并更新请求的 Uri 对象。

您可以将可信代理列表作为第二个构造参数设置。如果设置了此列表,则只有当 REMOTE_ADDR 在可信列表中时,才会检查代理头部。

基于 akrabat/proxy-detection-middleware。它使用 PHPUnit 5,并支持 PHP 5.6。

安装

composer require wellingguzman/proxy-detection

使用

在 Slim 3 中

$trustedProxies = ['10.0.0.1', '10.0.0.2'];
$app->add(new RKA\Middleware\ProxyDetection($trustedProxies));

$app->get('/', function ($request, $response, $args) {
    $scheme = $request->getUri()->getScheme();
    $host = $request->getUri()->getHost();
    $port = $request->getUri()->getPort();

    return $response;
});

测试

  • 代码覆盖率: $ vendor/bin/phpcs
  • 单元测试: $ vendor/bin/phpunit
  • 代码覆盖率: $ vendor/bin/phpunit --coverage-html ./build