Maison >développement back-end >Tutoriel C#.Net >Exemple de didacticiel d'exécution de ZKEACMS sur CentOS
Cet article présente principalement le processus détaillé d'exécution de ZKEACMS sur CentOS, qui a une certaine valeur de référence. Les amis intéressés peuvent s'y référer
ZKEACMS Core est développé sur la base du noyau .net et peut fonctionner sur plusieurs plates-formes. sur Windows, Linux et Mac Voyons ensuite comment exécuter ZKEACMS sur CentOS.
Installer .Net Core Runtime
Exécutez la commande suivante pour installer .Net Core Runtime
sudo yum install libunwind libicu curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=843420 sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet sudo ln -s /opt/dotnet/dotnet /usr/local/bin
Installer Nginx
sudo yum install epel-release sudo yum install nginx sudo systemctl enable nginx
Modifier la configuration de Nginx
Modifier la configuration de Nginx, laisser le proxy inverse vers localhost:5000, modifier le fichier de configuration global /etc/nginx/nginx.conf, modifiez le nœud d'emplacement avec le contenu suivant
location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }
Démarrez Nginx
sudo systemctl start nginx
À ce stade, notre L'environnement correspond. Bon, ensuite, publions ZKEACMS
Publiez ZKEACMS.Core
Publiez ZKEACMS.Core C'est relativement simple, il suffit de double-cliquer sur Publish.cmd
Base de donnéesSQLite
Par souci de simplicité, SQLite est utilisé ici comme base de données, et une donnée SQLite est généré nommé Database.sqlite . Dans le dossier du programme publié, créez le dossier App_Data et placez Database.sqlite dans le répertoire App_Data. Concernant la façon de générer des données SQLite, vous pouvez demander dans le groupe ou rechercher vous-même sur Baidu/Google.
Modifiez la chaîne de connexion
Ouvrez appsettings.json et ajoutez la chaîne de connexion à la base de données SQLite Le résultat est le suivant
{ "ConnectionStrings": { "DefaultConnection": "", "Sqlite": "Data Source=App_Data/Database.sqlite", "MySql": "" }, "ApplicationInsights": { "InstrumentationKey": "" }, "Logging": { "IncludeScopes": false, "LogLevel": { "Default": "Debug", "System": "Information", "Microsoft": "Information" } }, "Culture": "zh-CN" }
Emballer et télécharger sur le serveur
Nous allons empaqueter le programme publié dans cms.unzip cms.zip -d cms
Exécuter
localisez dans le répertoire, puis utilisez la commande dotnet pour exécutercd /root/cms dotnet ZKEACMS.WebHost.dllAprès une opération réussie, vous pouvez utiliser l'adresse IP de votre serveur ou nom de domaine auquel accéder :)Après avoir quitté le client de connexion à distance SSH, j'ai constaté que je ne pouvais pas y accéder. C'est parce que dotnet s'est également fermé.
Exécuter en tant que service
Créez un service pour laisser dotnet s'exécuter en arrière-plan. Installer l'éditeur nanoyum install nano
Créer un service
sudo nano /etc/systemd/system/zkeacms.serviceEntrez le contenu suivant pour enregistrer
[Unit] Description=ZKEACMS [Service] WorkingDirectory=/root/cms ExecStart=/usr/local/bin/dotnet /root/cms/ZKEACMS.WebHost.dll Restart=always RestartSec=10 SyslogIdentifier=zkeacms User=root Environment=ASPNETCORE_ENVIRONMENT=Production [Install] WantedBy=multi-user.target
Démarrer le service
systemctl start zkeacms.serviceDe cette façon, vous pouvez quitter en toute sécurité la connexion à distance SSH. [Recommandations associées]1.
Code de vérification graphique .Net Core
2Chargement du fichier de configuration .NET Core et DI Inject. données de configuration
3.Documentation de l'outil CLI .NET Core dotnet-publish
4Introduction détaillée à ZKEACMS pour .Net Core
5.Partagez l'exemple de code d'utilisation de la vérification de formulaires dans .net MVC
6Comment faire une requête http sous .net core ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!