Cette rubrique décrit les variables intégrées disponibles dans EdgeScript et leurs variables NGINX correspondantes.
Le tableau suivant décrit les variables intégrées d'EdgeScript.
| Variable intégrée | Description | Variable NGINX |
| $arg_{name} | Valeur du paramètre name dans la query string. Une query string contient les paramètres d'une requête HTTP. | $arg_ Remarque Si {name} contient un trait d'union (-), utilisez la fonction req_uri_arg pour récupérer la valeur au lieu de la variable $arg_. Par exemple, pour la requête http://example.com/1.jpg?example-demo=123, utilisez la fonction req_uri_arg('example-demo') pour obtenir la valeur. |
| $http_{name} | Valeur de l'en-tête de requête spécifié. | $http_ Remarque Si {name} contient un trait d'union (-), remplacez-le par un underscore (_). Par exemple, pour accéder à l'en-tête X-USER-ID, utilisez la variable $http_x_user_id. |
| $cookie_{name} | Valeur du cookie {name} issue de l'en-tête cookie de la requête. | $cookie_ Remarque Si {name} contient un trait d'union (-), utilisez la fonction req_cookie pour récupérer la valeur au lieu de la variable $cookie_. Par exemple, pour obtenir la valeur d'une requête avec l'en-tête cookie:example-demo=123, utilisez la fonction req_cookie('example-demo'). |
| $scheme | Type de protocole, tel que http ou https. | $scheme |
| $server_protocol | Version du protocole, telle que HTTP/1.1. | $server_protocol |
| $host | Hôte d'origine provenant de l'en-tête de requête. | $host |
| $uri | URI d'origine de la requête, hors query string. | Aucune |
| $args | $args représente tous les paramètres de requête sous forme de chaîne unique, sans le point d'interrogation (?). Par exemple, pour la requête http://example.aliyundoc.com/1k.file?k1=v1&k2=v2 :
| $args |
| $request_method | Méthode de requête, telle que GET ou POST. | $request_method |
| $request_uri | URI de requête d'origine complète, incluant le chemin et la query string. Équivalent à uri + '?' + args. | $request_uri |
| $remote_addr | Adresse IP du client (première adresse IP de l'en-tête x-forwarded-for). | $remote_addr |
Remarque
Le préfixe dollar (
$) des variables intégrées améliore la lisibilité et peut être omis.Les variables intégrées sont en lecture seule et ne peuvent pas recevoir de nouvelles valeurs.
Chaque règle EdgeScript prend en charge jusqu'à 200 variables globales. Les variables locales ne sont pas limitées. Pour dépasser la limite de variables globales, définissez une fonction personnalisée et utilisez des variables locales dans celle-ci.