Skip to content

Commit 108466f

Browse files
Added missing SERVER variables including the content-type (#29)
* Added missing SERVER variables including the content-type * Update SymfonyHttpHandler.php * Update LaravelHttpHandler.php * Update SymfonyHttpHandler.php
1 parent a4aa529 commit 108466f

File tree

2 files changed

+24
-12
lines changed

2 files changed

+24
-12
lines changed

src/LaravelHttpHandler.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,21 @@ public function __construct(Kernel $kernel)
2626
public function handleRequest(HttpRequestEvent $event, Context $context): HttpResponse
2727
{
2828
Request::setTrustedProxies(['127.0.0.1'], Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO);
29-
$server = [
30-
'SERVER_PROTOCOL' => $event->getProtocolVersion(),
31-
'REQUEST_METHOD' => $event->getMethod(),
29+
30+
// CGI Version 1.1 - Section 4.1
31+
$server = array_filter([
32+
'AUTH_TYPE' => $event->getHeaders()['auth-type'] ?? null, // 4.1.1
33+
'CONTENT_LENGTH' => $event->getHeaders()['content-length'] ?? null, // 4.1.2
34+
'CONTENT_TYPE' => $event->getContentType(), // 4.1.3
35+
'QUERY_STRING' => $event->getQueryString(), // 4.1.7
36+
'REQUEST_METHOD' => $event->getMethod(), // 4.1.12
37+
'SERVER_PORT' => $event->getServerPort(), // 4.1.16
38+
'SERVER_PROTOCOL' => $event->getProtocolVersion(), // 4.1.16
39+
'DOCUMENT_ROOT' => getcwd(),
3240
'REQUEST_TIME' => time(),
3341
'REQUEST_TIME_FLOAT' => microtime(true),
34-
'QUERY_STRING' => $event->getQueryString(),
35-
'DOCUMENT_ROOT' => getcwd(),
3642
'REQUEST_URI' => $event->getUri(),
37-
];
43+
], fn ($value) => null !== $value);
3844

3945
foreach ($event->getHeaders() as $name => $values) {
4046
$server['HTTP_'.strtoupper($name)] = $values[0];

src/SymfonyHttpHandler.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,21 @@ public function __construct(HttpKernelInterface $kernel)
2727
public function handleRequest(HttpRequestEvent $event, Context $context): HttpResponse
2828
{
2929
Request::setTrustedProxies(['127.0.0.1'], Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO);
30-
$server = [
31-
'SERVER_PROTOCOL' => $event->getProtocolVersion(),
32-
'REQUEST_METHOD' => $event->getMethod(),
30+
31+
// CGI Version 1.1 - Section 4.1
32+
$server = array_filter([
33+
'AUTH_TYPE' => $event->getHeaders()['auth-type'] ?? null, // 4.1.1
34+
'CONTENT_LENGTH' => $event->getHeaders()['content-length'] ?? null, // 4.1.2
35+
'CONTENT_TYPE' => $event->getContentType(), // 4.1.3
36+
'QUERY_STRING' => $event->getQueryString(), // 4.1.7
37+
'REQUEST_METHOD' => $event->getMethod(), // 4.1.12
38+
'SERVER_PORT' => $event->getServerPort(), // 4.1.16
39+
'SERVER_PROTOCOL' => $event->getProtocolVersion(), // 4.1.16
40+
'DOCUMENT_ROOT' => getcwd(),
3341
'REQUEST_TIME' => time(),
3442
'REQUEST_TIME_FLOAT' => microtime(true),
35-
'QUERY_STRING' => $event->getQueryString(),
36-
'DOCUMENT_ROOT' => getcwd(),
3743
'REQUEST_URI' => $event->getUri(),
38-
];
44+
], fn ($value) => null !== $value);
3945

4046
foreach ($event->getHeaders() as $name => $values) {
4147
$server['HTTP_'.strtoupper($name)] = $values[0];

0 commit comments

Comments
 (0)