Unusual but valid headers in requests are not available to PHP when running via CGI
Offen
Dieses Issue hat noch niemand übernommen.
Bug
SAPI: cgi
Status: Needs Triage
- Vorherrschende Sprache
- C
- Sterne
- 40.4k
- Forks
- 8.2k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 96
Beschreibung
Description
The following code:
<?php
print_r($_SERVER);
Requested with:
curl -s -H 'X-Test: 1' -H 'X-%%Test%%: 1' 'http://127.0.0.1/' | grep 'HTTP_'
Resulted in this output:
[HTTP_X_TEST] => 1
[HTTP_ACCEPT] => */*
[HTTP_USER_AGENT] => curl/7.83.1
[HTTP_HOST] => 127.0.0.1
But I expected this output instead:
[HTTP_X_TEST] => 1
[HTTP_X_%%TEST%%] => 1
[HTTP_ACCEPT] => */*
[HTTP_USER_AGENT] => curl/7.83.1
[HTTP_HOST] => 127.0.0.1
This appears to be unique to CGI, or alternatively mod_php is immune.
PHP Version
PHP 8.1.26
Operating System
Alpine Linux 3.18
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduzieren Sie die Anfrage gegen PHP 8.1.26 auf Alpine Linux 3.18 über CGI und untersuchen Sie, wie CGI $SERVER befüllt, wobei Sie das Ergebnis mit mod_php vergleichen. Als erledigt gilt die Aufgabe, wenn der ungewöhnliche X-%%Test%%-Header als HTTP_X%%TEST%% verfügbar ist und vorhandene Header weiterhin verfügbar sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- php
- Bereich
- backend
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100