在nginx中有条件地使用基本身份validation

我有一个内置于Docker镜像中的NGINX服务器,我想在生产和临时环境中使用它。

问题在于,分段环境需要启用基本身份validation才能保护服务器免受窥探。

有没有办法将基本身份validationdynamic应用到nginx服务器? 我可以将环境variables传递给nginx,或者我可以使用预定义的静态主机名来区分生产和部署。

不过,我不确定如何在nginx中有条件地使用这些数据。

这是我的configuration到目前为止:

server { listen 80 default_server; # IF: %ENVIRONMENT% = 'staging' OR # IF: $host = 'example.com' auth_basic "global"; auth_basic_user_file /etc/nginx/.htpasswd; # root /var/www; location /health-check { auth_basic off; try_files /health-check.html =404; } location / { try_files $uri $uri/ /index.html; } } 

任何build议将不胜感激。