In nginx.conf.
Nach dem Festlegen einer Variablen nach set $name value
,
Ich kann es wie $name
,
Aber wenn ich eine Betriebssystemumgebungsvariable exportiere
von env name_from_env
,
wie Ссылка sagte,
und ich bin mir sicher, dass der name_from_env gültig ist
definierter Formular-Nginx-Elternprozess.
Aber, meine Freunde, wie soll ich darauf verweisen? $ name_from_env oder $ {name_from_env} oder % name_from_env% hat nicht funktioniert, was ich vorher versucht habe.
nginx verfügt nicht über die eingebaute Fähigkeit, seine Umgebungsvariablen in der aktuellen Konfiguration zu referenzieren. Die einfachste Lösung ist jedoch die perl_set
-Direktive von ngx_http_perl_module , einem zusätzlichen Modul für nginx. Das offizielle nginx-Paket erstellt das Perl-Modul dynamisch , so dass Sie sicherstellen müssen, dass Sie das zusätzliche nginx-module-perl
-Paket installieren ( oder konfiguriere deinen eigenen Build von nginx, falls du das tust.)
Die Konfiguration sieht so aus:
%Vor%Siehe auch Ссылка für wie Lua zu benutzen, um dasselbe zu erreichen. Lua-Unterstützung erfordert ein Drittanbietermodul und wird nicht mit den Standardpaketen von Nginx ausgeliefert.
Es sollte $ name_from_env sein, genau wie jede andere Variable von Nginx.
Beachten Sie, dass env nur im Hauptteil Ihrer Konfiguration verwendet werden kann, nicht in http-, Server- oder Standort-Blöcken.
Ich nehme an, dass env nicht wirklich das ist, was Sie auf jeden Fall brauchen. Wenn Sie versuchen, Variablen an Ihre Anwendung weiterzugeben, sollten Sie proxy_param oder fastcgi_param verwenden (je nachdem, wie Sie mit Ihrem Upstream sprechen):
%Vor%Tags und Links nginx