1

今日異常な動作に直面しました。 Azure App Servicesを使用してasp.netコア1.1 Webアプリケーションをホストし、特定のコントローラーまたはエリアにルーティングするサブドメインを使用しています。私SubdomainConstraint中のSO :私はホスト名を取得するためにASP.NET Core Azure AppサービスhttpContext.Request.Headers ["Host"]値

HttpContext.Request.Headers["Host"] 

を使用IRouteConstraint。その

mywebsite.com or subdomain.mywebsite.com 

のようなことが以前に返されたなめらかは(昨日または多分)今日から、それは私のアプリのサービス名の代わりにホスト名を返すために始めました。 localhostではすべて正常に動作します。 Azureのアプリケーションサービスで

Accept : 
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Accept-Encoding : gzip, deflate, sdch, br 
Accept-Language : ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4,ca;q=0.2 
Cookie : .AspNetCore.Antiforgery.... 
Host : localhost:37202 
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 
Upgrade-Insecure-Requests : 1 

Connection : Keep-Alive 
Accept : text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Accept-Encoding : gzip, deflate, sdch 
Accept-Language : ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4,ca;q=0.2 
Cookie : AspNetCore.Antiforgery.... 
Host : mydeploymentname:80 
Max-Forwards : 10 
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 
Upgrade-Insecure-Requests : 1 
X-LiveUpgrade : 1 
X-WAWS-Unencoded-URL :/
X-Original-URL :/
X-ARR-LOG-ID : 9c76e796-84a8-4335-919c-9ca4rb745f4fefdfde 
DISGUISED-HOST : mywebsite.com 
X-SITE-DEPLOYMENT-ID : mydeploymentname 
WAS-DEFAULT-HOSTNAME : mydeploymentname.azurewebsites.net 
X-Forwarded-For : IP:56548 
MS-ASPNETCORE-TOKEN : a97b93ba-6106-4301-87b2-8af9a929d7dc 
X-Original-For : 127.0.0.1:55602 
X-Original-Proto : http 

は私が

Headers["DISGUISED-HOST"] 
から必要なものを得ることができます私のビューのいずれかで

Context.Request.Headers 

の列挙 は、ローカルホスト上で私を与えます

しかし、ログインページへのリダイレクトに問題があると、私のデプロイメント名で間違ったURLにリダイレクトされます。

どこかで何かを混乱させることができるかどうかわかりません。しかし、私たちは数日前のように最後の展開を行いました。

+0

あなたが直接、または、ウェブアプリ名を共有することができます[間接的に](https://github.com/projectkudu/kudu/wiki/Reporting-your-site-name-without-posting-it-publicly)?これは調査に役立ちます。ありがとう! –

+0

私は同じ問題を抱えており、マイクロソフトはそれを検討しています。 – argaz

+0

私のために解決しました。 – argaz

答えて

2

これは、Azure App Serviceの少数のアプリケーションに配備されたAspNetCoreModuleの回帰によって発生します。この問題は調査中です。ステータスはthis threadに従ってください。以下を追加し、あなたの設定方法で(通常はstartup.csで):ここで

は修正が展開されるまで使用することができます回避策です

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) 
    { 
     app.Use((ctx, next) => 
     { 
      string disguisedHost = ctx.Request.Headers["DISGUISED-HOST"]; 
      if (!String.IsNullOrWhiteSpace(disguisedHost)) 
      { 
       ctx.Request.Host = new Microsoft.AspNetCore.Http.HostString(disguisedHost); 
      } 
      return next(); 
     }); 

     // Rest of your code here... 

    } 
+0

これはいつ修正されるのですか?これは、West USに配備されたいくつかのアプリに影響を与えています。 –

関連する問題