【发布时间】:2017-12-19 14:40:42
【问题描述】:
我正在使用 Azure 应用服务中的身份验证,也就是“简单身份验证” https://docs.microsoft.com/en-us/azure/app-service/app-service-authentication-overview
如果我使用它的 Azure 名称浏览我的 azure 网站,它工作正常:[myid].azurewebsites.net 但是,如果将我的网站放在反向代理后面,在身份验证后,我总是被重定向到 [myid].azurewebsites.net 而不是 www.[mydomain].com。反向代理已正确配置为为我的页面提供服务,并且无需身份验证即可正常工作。
我认为根本原因是“Easy Authentication”如何构建redirect_uri参数。使用 Chrome F12 我注意到在初始重定向到身份验证服务期间,浏览器 url 是使用 [myid].azurewebsites.net 而不是 www.[mydomain].com 构建的。
我找不到指示/强制“简易身份验证”使用 www.[mydomain].com 的方法
有什么建议或想法吗?
--- 更新 ---
我使用 Nginx 作为反向代理。配置文件的相关片段(已编辑):
server {
server_name www.mydomain.com;
listen 80;
listen 443 ssl;
...
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-Host $host;
proxy_pass https://myid.azurewebsites.net/;
}
}
【问题讨论】:
-
你是如何实现反向代理的,URL Rewrite?请更新您的问题并提供更多详细信息。
-
@BruceChen 问题已更新。反向代理本身工作正常。也许任何额外的标头都可以帮助“Easy Auth”了解背后有反向代理,但我还没有找到任何相关文档。
标签: azure azure-web-app-service azure-authentication