首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >来自nginx的未知"server“变量

来自nginx的未知"server“变量
EN

Stack Overflow用户
提问于 2019-04-17 05:55:16
回答 1查看 1.7K关注 0票数 1

我正在AWS上部署容器化的nginx服务器。然而,当我试图访问它时,我从浏览器得到"Unable to connect“错误。日志文件显示错误:nginx: [emerg] unknown "server" variable

这是我的prod.conf文件:

代码语言:javascript
复制
server {
    listen 80;

    location / {
        proxy_pass          http://users:5000;
        proxy_redirect      default;
        proxy_set_header    Host $host;
        proxy_set_header    X-Real-IP $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Host $server-name;
    }
}

这在Dockerfile-prod文件中:

代码语言:javascript
复制
FROM nginx:1.15.8-alpine

RUN rm /etc/nginx/conf.d/default.conf
COPY /prod.conf /etc/nginx/conf.d

compose-prod.yml文件:

代码语言:javascript
复制
version: '3.7'

services:

  users:
    build:
    context: ./services/users
    dockerfile: Dockerfile-prod
  expose:
    - '5000'
  environment:
    - FLASK_ENV=production
    - APP_SETTINGS=project.config.ProductionConfig
    - DATABASE_URL=postgres://postgres:postgres@users-db:5432/users_prod
    - DATABASE_TEST_URL=postgres://postgres:postgres@users-db:5432/users_test
  depends_on:
    - users-db

users-db:
  build:
    context: ./services/users/project/db
    dockerfile: Dockerfile
  expose:
    - '5432'
  environment:
    - POSTGRES_USER=postgres
    - POSTGRES_PASSWORD=postgres

nginx:
  build:
    context: ./services/nginx
    dockerfile: Dockerfile-prod
  restart: always
  ports:
    - 80:80
  depends_on:
    - users

为什么它会给我这个错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-17 07:09:27

您应该使用带下划线的$server_name,而不是$server-name http://nginx.org/en/docs/http/ngx_http_core_module.html#server_name

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55717139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档