これはNginxの最初の赤ちゃんステップですので、どんな助けも素晴らしいでしょう。サブパスでAsp.netのコアサイトを見つける方法
私は二つの容器からなる小さなドッキングウィンドウ-構成するアプリケーションを持っている: nginxの アップロード
nginxのはそうのような私たちのイントラネットから到達可能であるように、nginxのポート80は、ホストマシン上で公開されています。www.mytestを.NET 私は今のように、そのアドレスのサブパスにasp.netコアサイト「アップロード」を公開します: www.mytest.net/upload/
現在、私は、すべてのURLなどを、これを達成することができません私はそれをパスのアップロードに移動しようとすると、NGINX、asp.netのコアまたは両方のdiffを設定する必要があるかどうかわからない場合アップロードでは動作しません明らかに。 Nginx.confで
現在の設定:
location/{
proxy_pass http://upload:80;
# The default minimum configuration required for ASP.NET Core
# See https://docs.asp.net/en/latest/publishing/linuxproduction.html?highlight=nginx#configure-a-reverse-proxy-server
proxy_cache_bypass $http_upgrade;
# Turn off changing the URL's in headers like the 'Location' HTTP header.
proxy_redirect off;
# Forwards the Host HTTP header.
proxy_set_header Host $host;
# The Kestrel web server we are forwarding requests to only speaks HTTP 1.1.
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
# Adds the 'Connection: keep-alive' HTTP header.
proxy_set_header Connection keep-alive;
}
}
私が原因、それは「/」上で動作しますが、私は「アップロード」を使用している場合、アップロードサイトの簡単なフォームはもう動作しない、言ったようにURLの不一致
HttpContext.Request.PathBaseとUsePathBaseという新しい拡張機能を読み上げてください。これらは、アプリのルートURLを分離してルートを壊さないようにします。 – Tratcher
@Tratcherありがとうございました!私はそれを行います。あなたは親切にそれから答えを出しますか?私はそれをアップヴォートすることができますか? –