ASP.NET, Plesk
asp-net-core-mit-plesk-betreiben

Da ich vor kurzem eine ASP.NET Core Webapp auf einem Linux Server mit Plesk betreiben wollte hier eine kurz Anleitung dafür, wie ihr das Schritt für Schritt machen könnt.

Installation ASP.NET Core

Für CentOS 7 müsste ihr euch per SSH auf eurem Server aufschalten und folgendes als root ausführen:

Das installiert den Microsoft Key und installiert die Abhängigkeiten, die für das ASP.NET Core SDK gebraucht werden.

Jetzt können wir das eigentliche ASP.NET Core SDK installieren, das macht ihr wie folgt:

Wenn die Installation abgeschlossen ist könnt ihr mit folgendem Befehl testen ob alles richtig installiert wurde:

Das zeigt euch die .NET Core Version an und wo es installiert wurde. Den Installationspfad brauchen wir später noch.

donetinfo - ASP.NET Core mit Plesk betreiben

Erstellen der App

Nun da das SDK installiert ist können wir die erste Webapplikation erstellen.

Dafür erstellen wir unter Pfad eurer Domain in Plesk ein neues Projekt.

Zuerst navigieren mir in den Ordner:

In Plesk wurde dafür bereits eine Domain erstellt. Den Ordner wo Ihr euer Projekt erstellt findet ihr in Plesk.
Hier ein Screenshot:

plesk domain - ASP.NET Core mit Plesk betreiben

Nun können wir das .NET Core Projekt mit dem Befehl erstellen:

Hier erstellen wir eine neue MVC Website mit Razor View Engine.

Mit folgenden Befehlen setzen wir die Applikation in Production Mode und starten sie anschließend.

Die Website läuft nun unter localhost:5000 wir müssen jetzt nur noch in Plesk dem Apache mitteilen, das alle Request auf diese Adresse umgeleitet werden sollen, das macht ihr mit einem Reverse Proxy.

Konfiguration in Plesk

Im Plesk Dashboard unter den Domain Einstellungen für Apache & nginx auswählen

plesk apache - ASP.NET Core mit Plesk betreiben

Unter Zusätzliche Apache-Anweisungen folgendes einfügen:

ServerName und ServerAlias ändert ihr natürlich in euren Domainnamen um.

plesk apache settings - ASP.NET Core mit Plesk betreiben

 

Wenn Ihr nun versucht über den Browser auf eure Domain zu navigieren sollte die ASP.NET Core App erscheinen.

netcore website 846x561 - ASP.NET Core mit Plesk betreiben

Hinweis

Falls ihr Probleme habt und die Website nicht angezeigt werden kann, dann liegt es wahrscheinlich an die HTTPS Redirection Middleware, welche in der Startup.cs eingestellt ist.

Löscht dann einfach unter  /var/www/vhosts/name-eurer-domain/httpdocs in der Startup.cs folgenden Code:

Danach nochmal:

Service erstellen

Damit ihr nicht bei jedem neustart des Servers dotnet run ausführen müsst, könnt ihr in Linux ein Service dafür erstellen, welcher das für euch macht. Einfach per SSH auf eurem Server schalten und folgendes ausführen:

In die Datei folgendes einfügen:

Bei ExecStart darauf achten, dass der ASP.NET Installationspfad stimmt, den erfahrt ihr über dotnet –info und dass der Pfad zu eurer App stimmt.

Nun die Datei abspeichern und den Dienst aktivieren:

Den Status des Dienstes erfährt ihr mit:

Nun sollte die Website auch nach einem Server neustart immer erreichbar sein, da der Dienst das starten der App übernimmt.

Hier könnt ihr euch dann nochmal die Website ansehen: https://cms.zito-webdesign.de/

Ich hoffe euch hat der Artikel helfen können und Ihr könnt nun mit eurer .NET Core Entwicklung anfangen 🙂

 

0 Kommentare
Schlagwörter: , , , , , , ,

Giovanni

    Antworte auf diesen Beitrag

    Deine Email Adresse wird nicht veröffentlicht. Pflichtfelder sind markiert *