Heim >Betrieb und Instandhaltung >Nginx >Was sind die integrierten Variablen von Nginx?

Was sind die integrierten Variablen von Nginx?

王林
王林nach vorne
2023-05-26 16:16:063791Durchsuche

Eingebaute Nginx-Variablen

Eingebaute Variablen werden im Modul ngx_http_core_module gespeichert. Die Benennungsmethode von Variablen stimmt mit den Apache-Servervariablen überein. Zusammenfassend stellen diese Variablen den Inhalt von Client-Anforderungsheadern dar, z. B. $http_user_agent, $http_cookie usw. Im Folgenden sind alle integrierten Variablen aufgeführt, die von Nginx unterstützt werden:

$arg_name
Der Parametername in der Anfrage, d. h. die arg_name=arg_value-Form nach „?“

$args
Der Parameterwert in der Anfrage

$ binäre_remote_addr
Client Die binäre Form der Adresse, feste Länge beträgt 4 Bytes

$body_bytes_sent
Die Anzahl der an den Client übertragenen Bytes, der Antwortheader wird nicht gezählt; diese Variable ist mit dem Parameter „%b“ in der mod_log_config kompatibel Modul von Apache

$bytes_sent
Die Anzahl der an den Client übertragenen Bytes (1.3.8, 1.2.5)

$connection
Die Sequenznummer der TCP-Verbindung (1.3.8, 1.2.5)

$connection_requests
Die aktuelle Anzahl der Anfragen für die TCP-Verbindung ( 1.3.8, 1.2.5)

$content_length
Anfrage-Header-Feld „content-length“

$content_type
Anfrage-Header-Feld „content-type“

$cookie_name
Cookie-Name

$document_root
aktuell angefordertes Dokument Das Stammverzeichnis oder Alias ​​

$document_uri
ist dasselbe wie $uri

$host
Die Priorität ist wie folgt: Der Hostname der http-Anfragezeile>"host"-Anfrage Header-Feld>Der Servername, der mit der Anfrage übereinstimmt

$hostname
Hostname

$http_name
passt zu jedem Anfrage-Header-Feld; die zweite Hälfte des Variablennamens „name“ kann durch ein beliebiges Anfrage-Header-Feld ersetzt werden. Wenn Sie den HTTP-Anforderungsheader „accept-sprache“ in der Konfigurationsdatei erhalten müssen, ersetzen Sie „-“. Ersetzen Sie ihn durch Unterstriche und ersetzen Sie Großbuchstaben durch Kleinbuchstaben in der Form: $http_accept_sprache.

$https
Wenn der SSL-Sicherheitsmodus aktiviert ist, ist der Wert „on“, andernfalls handelt es sich um eine leere Zeichenfolge.

$is_args
Wenn die Anfrage Parameter enthält, ist der Wert „?“, andernfalls handelt es sich um eine leere Zeichenfolge.

$limit_rate
wird verwendet, um die Geschwindigkeitsbegrenzung der Antwort festzulegen, Einzelheiten finden Sie unter limit_rate.

$msec
Aktueller Unix-Zeitstempel (1.3.9, 1.2.6)

$nginx_version
nginx-Version

$pid
pid des Arbeitsprozesses

$pipe
Wenn die Anfrage von der Pipe-Kommunikation kommt, ist der Wert „p“, andernfalls „.“ (1.3.12, 1.2.7)

$proxy_protocol_addr
Wenn es sich um einen direkten Zugriff handelt, ist der Wert eine leere Zeichenfolge. (1.5.12)

$query_string
Gleiche wie $args

$realpath_root
Der echte Pfad zum aktuell angeforderten Dokumentstamm oder Alias, wandelt alle symbolischen Links in echte Pfade um.

$remote_addr
Client-Adresse

$remote_port
Client-Port

$remote_user
Benutzername, der für den HTTP-Basisauthentifizierungsdienst verwendet wird

$request
Stellt die Anforderungsadresse des Clients dar

$request_body
Der Anforderungstext des Clients
Diese Variable kann sein Wird am Standort verwendet, um den Anforderungstext über Proxy_pass, Fastcgi_pass, Uwsgi_pass und Scgi_pass an den Proxyserver der nächsten Ebene zu übergeben.

$request_body_file
Speichert den Client-Anfragetext in einer temporären Datei. Nachdem die Dateiverarbeitung abgeschlossen ist, muss diese Datei gelöscht werden. Wenn Sie diese Funktion aktivieren müssen, müssen Sie client_body_in_file_only festlegen. Wenn Sie die Sekundärdatei an den Back-End-Proxyserver übergeben, müssen Sie den Anforderungstext deaktivieren, d. h. Proxy_pass_request_body ausschalten, fastcgi_pass_request_body ausschalten, uwsgi_pass_request_body ausschalten oder scgi_pass_request_body ausschalten.

$request_completion
Der Wert ist „ok“, wenn die Anfrage erfolgreich ist, oder leer, wenn die Anfrage nicht abgeschlossen ist oder die Anfrage nicht der letzte Teil einer Bereichsanforderung ist.

$request_filename
Der Dateipfad der aktuellen Verbindungsanforderung, generiert durch den Root- oder Alias-Befehl und die URI-Anfrage.

$request_length
Die Länge der Anfrage (einschließlich der angeforderten Adresse, des HTTP-Anfrageheaders und des Anfragetextes) (1.3.12, 1.2.7)

$request_method
http-Anfragemethode, normalerweise „get“ oder „post“

$request_time
Die Zeit, die zur Verarbeitung von Client-Anfragen (1.3.9, 1.2.6) benötigt wird, beginnt ab dem ersten vom Client gelesenen Byte.

$request_uri
Diese Variable entspricht der ursprünglichen URI, die einige Client-Anfrageparameter enthält. Sie kann nicht geändert werden. Bitte sehen Sie sich $uri an, um die URI zu ändern oder neu zu schreiben. Sie enthält nicht den Hostnamen, zum Beispiel: „/cnphp/test“. .php?arg=freemouse ".

$scheme
Das in der Anfrage verwendete Webprotokoll „http“ oder „https“

$sent_http_name
Sie können ein beliebiges HTTP-Antwort-Header-Feld festlegen; die zweite Hälfte des Variablennamens „name“ kann durch eine beliebige Antwort ersetzt werden Header-Feld, z. B. Wenn Sie die Inhaltslänge des Antwort-Headers festlegen müssen, ersetzen Sie „-“ durch einen Unterstrich und Großbuchstaben durch Kleinbuchstaben, z. B.: $sent_http_content_length 4096.

$server_addr
Serverseitige Adresse Es ist zu beachten, dass die IP-Adresse vorab in der Konfigurationsdatei festgelegt werden sollte, um einen Zugriff auf den Linux-Systemkern zu vermeiden.

$server_name
Servername, www.cnphp.info

$server_port
Serverport

$server_protocol
Die http-Version des Servers, normalerweise „http/1.0“ oder „http/1.1“

$status
http Antwortcode (1.3.2, 1.2.2)

$tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, $tcpinfo_rcv_space
Detaillierte Informationen zur Client-TCP-Verbindung

$time_iso8601
Serverzeit im ISO 8610-Format (1.3.12, 1.2.7)

$time_local
Serverzeit (Protokollformat) (1.3.12, 1.2.7)

$uri
Die aktuelle URI in der Anfrage (Ohne Anforderungsparameter befinden sich die Parameter in $args), die sich vom vom Browser übergebenen Wert von $request_uri unterscheiden können. Sie können durch interne Umleitung oder mithilfe der Indexanweisung geändert werden. $uri enthält nicht den Hostnamen , wie zum Beispiel „/foo/ bar.html“.

in Ginx integrierte globale Variablen und ihre Bedeutung

Name Version Beschreibung (Die Variablenliste stammt aus der Datei ngx_http_variables)
$args 1.0.8 Parameter in der Anfrage;
$binary_remote_addr 1.0.8 Binäre Darstellung der Remote-Adresse
$ body_bytes_sent 1.0 .8 Die Anzahl der gesendeten Nachrichtentextbytes
$content_length 1.0.8 „content-length“ in http-Anforderungsinformationen;
$content_type 1.0.8 „content-type“ in Anforderungsinformationen;# 🎜 🎜#$document_root 1.0.8 Legen Sie den Wert für den Stammpfad der aktuellen Anfrage fest;
$document_uri 1.0.8 Gleich wie $uri; z. B. /test1/test2/test.php
$host 1.0 . 8 Anfragen Der „Host“ in den Informationen entspricht, wenn in der Anfrage keine Hostzeile vorhanden ist, dem eingestellten Servernamen
$hostname 1.0.8 #$#$ Http_referr 1.0.8 Referenzadresse#🎜 🎜#$ http_user_agent 1.0.8 Client-Proxy-Informationen
$ http_via 1.0.8 letzte Zugriffsserver-IP-Adresse.
$http_x_forwarded_for 1.0.8 Entspricht dem Netzwerkzugriffspfad.
$is_args 1.0.8
$limit_rate 1.0.8 Begrenzung der Verbindungsrate;
$nginx_version 1.0.8
$pid 1.0.8
$query_string 1.0.8 Client-Portnummer;
$remote_user 1.0. 8 Client-Benutzername, der zur Authentifizierung verwendet wird;
$request 1.0.8 Benutzeranforderung
$request_body 1.0.8 Der Name der lokalen Datei, die an das Backend gesendet wird
$ request_completion 1.0.8
$request_filename 1.0.8 Der Dateipfadname der aktuellen Anfrage, z. B. $request_filename: d:nginx/html/test1/test2/test.php
$ request_method 1.0.8 Die Anforderungsmethode, z. B. „get“, „post“ usw. 8 Das verwendete Protokoll, z. B. http oder https, z. B. rewrite^(.+)$$scheme://example.com$1 weitergeleitet;
$sent_http_cache_control 1.0.8
$sent_http_connection 1.0.8 # 🎜 🎜#$sent_http_content_length 1.0.8
$sent_http_content_type 1.0.8
$sent_http_keep_alive 1.0.8
$sent_http_last_modified 1.0.8
$sent_http_location 1.0.8
$sent_http_transfer_encoding 1.0.8​​
$server_addr ​ 1.0.8 ​ Serveradresse, wenn die Serveradresse nicht mit listen angegeben wird, wird diese Variable verwendet Initiieren Sie einen Systemaufruf, um die Adresse zu erhalten (was zu Ressourcenverschwendung führt).
$server_name 1.0.8 Der Servername, an dem die Anfrage ankommt Angeforderte Version, „http/1.0“ oder „http/1.1“;
$uri 1.0.8 Die angeforderte URL kann sich vom ursprünglichen Wert unterscheiden, z. B. nach einer Umleitung.

Das obige ist der detaillierte Inhalt vonWas sind die integrierten Variablen von Nginx?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen