Požadavky: ASP.NET Core již podporuje poslech UDS (Unixové doménové sockety), pokud jsou Nginx a ASP.NET Core na stejném serveru, mohou komunikovat přímo přes UDS a Unixové doménové sockety obvykle mají menší režijní zátěž a vyšší přenosovou rychlost než použití TCP/IP.
Přezkoumání:
Nejprve jsem pro vytvoření nové webové aplikace .NET 8 zapouzdřil metodu rozšíření ListenerUnix následujícím kódem:
V Program.cs volejte následovně:
Kód především podporuje parametry URL pro umožnění http naslouchání a poslechu v unixové doméně socketu, a po úspěšném spuštění aplikace,Nastavte oprávnění pro soubor socketu domény Unix na 777Jinak, když nginx obrátí proxy na UDS, může hlásit problémy s oprávněním, a to následovně:
2025/09/17 11:01:26 [kritický zásah] 2887135#0: *112497 connect() to unix:/var/run/itsvse.socket selhal (13: Oprávnění odepřeno) při připojení k upstreamu, klient: x.x.x.x, server: itsvse.com, požadavek: "GET / HTTP/2.0", upstream: "http://unix:/var/run/itsvse.socket:/", hostitel: "itsvse.com" Pokud potřebujete ručně nastavit oprávnění 777, příkaz je následující:
Pokud nelze linuxový server poslat na Linux server, spuštění je úspěšné, jak je znázorněno na následujícím obrázku:
Při použití curl testu je příkaz následující:
Jak je uvedeno níže:
Konfigurace Nginx je následující:
Reverzní proxy cesta je nastavena se dvěma,Jeden s :/, druhý bez :/, efekt lze rozlišit požadavkem na výstup, jak je znázorněno na obrázku níže:
Odkaz:
Přihlášení k hypertextovému odkazu je viditelné.
Přihlášení k hypertextovému odkazu je viditelné.
Přihlášení k hypertextovému odkazu je viditelné. |