Add README to present the library and show how to use it.
This commit is contained in:
parent
83f50ba4e9
commit
1e20a86e4a
48
README.md
Normal file
48
README.md
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
# Forwarded
|
||||||
|
|
||||||
|
Forwarded is a PHP library which parse the `Forwarded` request header as defined in [RFC 7239](https://datatracker.ietf.org/doc/html/rfc7239). The `Forwarded` header is a standardized method for identifying the originating IP address of a client connecting to a web server through an HTTP proxy or load balancer, for example.
|
||||||
|
|
||||||
|
Forwarded is distributed as a composer library.
|
||||||
|
|
||||||
|
## Getting started
|
||||||
|
|
||||||
|
Just add the dependency to your composer project:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
composer require madeorsk/forwarded
|
||||||
|
```
|
||||||
|
|
||||||
|
## How to use
|
||||||
|
|
||||||
|
|
||||||
|
### The easy way
|
||||||
|
|
||||||
|
Usually, you just want to get the Forwarded header from your current request (for example when using PHP-FPM), or even just the IP address of the origin of the request.
|
||||||
|
|
||||||
|
```php
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Madeorsk\Forwarded\Forwarded;
|
||||||
|
|
||||||
|
$forwarded = Forwarded::get(); // Getting the parsed Forwarded header.
|
||||||
|
|
||||||
|
$originIp = Forwarded::getOriginIp(); // Getting the IP address of the origin request from the parsed Forwarded header.
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
### If you need more control
|
||||||
|
|
||||||
|
If you cannot obtain the header content from the classic standard way, you can call directly the Forwarded header parse.
|
||||||
|
|
||||||
|
```php
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Madeorsk\Forwarded\Parser;
|
||||||
|
|
||||||
|
// Get a Forwarded parsed header from its raw string.
|
||||||
|
$forwarded = (new Parser())->parse("for=192.0.2.43,for=\"[2001:db8:cafe::17]\",for=unknown");
|
||||||
|
|
||||||
|
// Get the Forwarded header content parsed in a raw associative array from its raw string.
|
||||||
|
$forwardedAssoc = (new Parser())->parseAssoc("for=192.0.2.43,for=\"[2001:db8:cafe::17]\",for=unknown");
|
||||||
|
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user