asp.net核心应用程序在生产中不使用Auth0身份验证

时间:2017-02-25 20:18:19

标签: nginx asp.net-core auth0

我正在为我的.net核心应用程序使用Auth0身份验证。为了将Auth0与我的应用程序集成,我完全遵循了此处提供的教程https://auth0.com/docs/quickstart/webapp/aspnet-core

在开发环境中,一切正常。换句话说,正确调用Auth0身份验证,我被重定向到我的应用程序。

在生产环境中,事情进展不顺利。发送到Auth0的重定向URI是http://localhost/signin-auth0,而它应该是http://mydomainname.com/signin-auth0

同样在制作中,我使用nginx作为反向代理,以便将http://mydomainname.com:80重定向到http://localhost:5000,这是kestrel绑定的地址。

我的问题:

  • 我是否应该在nginx中配置特定的内容,以便将重定向网址正确传递给Auth0?

  • 在哪里可以指定/强制传递给Auth0的重定向网址?

我的nginx配置非常基础:

http {

    sendfile on;

    gzip              on;
    gzip_http_version 1.0;
    gzip_proxied      any;
    gzip_min_length   500;
    gzip_disable      "MSIE [1-6]\.";
    gzip_types        text/plain text/xml text/css
                      text/comma-separated-values
                      text/javascript
                      application/x-javascript
                      application/atom+xml;

    # List of application servers
    upstream kestrel {

        server localhost:5000;

    }


    # Configuration for the server
    server {
        # Running port
        listen *:80;
        # index index.html;
        # root /usr/share/nginx/html;
        location / {
           proxy_pass http://kestrel;
           proxy_http_version 1.1;
           proxy_set_header Upgrade $http_upgrade;
           proxy_set_header Connection keep-alive;
           proxy_set_header Host localhost;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_cache_bypass $http_upgrade;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

好的想通了!我的nginx配置搞砸了:

proxy_set_header Host localhost;应改为proxy_set_header Host mydomainname.com;