nopCommerce ist eine kostenlose Open-Source-E-Commerce-Webanwendung, die mit ASP.NET erstellt wurde. Es ist eine Hochleistungsanwendung mit mehreren Geschäften, mehreren Anbietern und einer benutzerfreundlichen Weboberfläche.
In dieser Anleitung erfahren Sie, wie Sie nopCommerce in Ubuntu 20.04 mit MySQL, Nginx installieren und das Setup mit Let’sEncrypt SSL sichern.
Voraussetzungen
- Ein Ubuntu 20.04-Server und Benutzer mit sudo-Berechtigungen.
1. Ersteinrichtung
Aktualisieren Sie alle Pakete auf die neueste verfügbare Version.
sudo apt update sudo apt dist-upgrade -y
Unzip-Paket installieren, um den nopCommerce-Quellcode zu extrahieren.
sudo apt install unzip
2. Installieren Sie MySQL
Installieren Sie den MySQL-Server für Ihre Datenbank. Wir werden MySQL 8 installieren.
sudo apt install mysql-server mysql-client
Sicherer MySQL-Server.
sudo mysql_secure_installation
Folgen Sie den Anweisungen nacheinander und richten Sie ein neues Passwort für Ihren Root-Benutzer ein.
Melden Sie sich bei MySQL an.
sudo mysql -u root -p
Geben Sie das zuvor konfigurierte Passwort ein, um sich anzumelden.
3. Datenbank für nopCommerce erstellen
Erstellen Sie eine neue Datenbank und einen neuen Benutzer für die nopCommerce-Anwendung.
CREATE DATABASE nopcommerce_db /*\!40100 DEFAULT CHARACTER SET utf8mb4 */;
Neuen Benutzer erstellen.
CREATE USER 'nopcommerce_user'@'localhost' IDENTIFIED BY 'secure_password'; GRANT ALL PRIVILEGES ON nopcommerce_db.* TO 'nopcommerce_user'@'localhost'; FLUSH PRIVILEGES;
Jetzt haben Sie MySQL installiert und eine neue Datenbank mit Benutzer.
4. Installieren Sie ASP.NET
Laden Sie den Microsoft-Paketsignaturschlüssel herunter und fügen Sie ihn dem Paket-Repository hinzu.
Führen Sie die folgenden Befehle aus.
sudo wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb sudo rm packages-microsoft-prod.deb
Installieren Sie die ASP.NET-Laufzeitumgebung.
sudo apt update sudo apt install apt-transport-https sudo apt install aspnetcore-runtime-6.0
Überprüfen Sie die Installation.
dotnet --list-runtimes Output Microsoft.AspNetCore.App 6.0.3 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 6.0.3 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
5. Installieren Sie Nginx
Jetzt werden wir Nginx installieren und konfigurieren.
sudo apt install nginx
Sobald die Installation abgeschlossen ist, werden wir die Standardserverblöcke löschen und einen neuen für nopCommerce konfigurieren.
sudo rm -rf /etc/nginx/sites-available/default sudo rm -rf /etc/nginx/sites-enabled/default
Konfigurieren Sie Nginx für nopCommerce.
Erstellen Sie eine neue Konfigurationsdatei.
sudo nano /etc/nginx/sites-available/nopcommerce.conf
Fügen Sie Folgendes in die Datei ein. Wir verwenden eine Proxy-Konfiguration für Port 5000, auf dem nopCommerce läuft.
server { listen 80; listen [::]:80; server_name domain.com www.domain.com; 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; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
Drücken Sie CTRL+X
gefolgt von Y
und ENTER
um die Datei zu speichern und zu beenden.
Aktivieren Sie die Konfiguration, indem Sie einen Symlink zu sites-enabled
erstellen Verzeichnis.
sudo ln -s /etc/nginx/sites-available/nopcommerce.conf /etc/nginx/sites-enabled/nopcommerce.conf
Starten Sie Nginx neu, damit die Konfiguration wirksam wird.
sudo service nginx restart
6. Installieren Sie nopCommerce
Navigieren Sie zu Ihrem bevorzugten Verzeichnis, um den neuesten nopCommerce-Quellcode für Linux aus dem offiziellen Git-Repository herunterzuladen.
cd /var/www/html
sudo wget https://github.com/nopSolutions/nopCommerce/releases/download/release-4.50.1/nopCommerce_4.50.1_NoSource_linux_x64.zip
Extrahieren Sie die heruntergeladene Datei.
sudo unzip nopCommerce_4.50.1_NoSource_linux_x64.zip
Entferne die ZIP-Datei.
sudo rm -rf nopCommerce_4.50.1_NoSource_linux_x64.zip
Berechtigungen konfigurieren.
sudo chmod -R 755 /var/www/html sudo chown -R www-data:www-data /var/www/html
7. NopCommerce als Service konfigurieren
Konfigurieren Sie nopCommerce als Dienst, sodass es als Systemdienst ausgeführt wird. Es wird einfacher zu verwalten sein.
Erstellen Sie eine neue Servicedatei.
sudo nano /etc/systemd/system/nopcommerce.service
Fügen Sie den folgenden Inhalt ein.
Unit] Description=NopCommerce eCommerce application [Service] WorkingDirectory=/var/www/html/ ExecStart=/usr/bin/dotnet /var/www/html/Nop.Web.dll Restart=always # Auto restart nopCommerce in 10 seconds if .NET crashes RestartSec=10 KillSignal=SIGINT SyslogIdentifier=nopcommerce User=www-data Environment=ASPNETCORE_ENVIRONMENT=Production Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false [Install] WantedBy=multi-user.target
System-Daemon neu starten.
sudo systemctl daemon-reload
Aktivieren Sie nopCommerce, um beim Systemstart zu starten.
sudo systemctl enable nopcommerce
NopCommerce starten.
sudo systemctl start nopcommerce
Überprüfen Sie den Status mit dem folgenden Befehl.
sudo systemctl status nopcommerce
● nopcommerce.service - NopCommerce Ecommerce Application Loaded: loaded (/etc/systemd/system/nopcommerce.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2022-04-06 06:22:05 UTC; 2min 36s ago Main PID: 5149 (dotnet) Tasks: 20 (limit: 1151) Memory: 449.6M CGroup: /system.slice/nopcommerce.service └─5149 /usr/bin/dotnet /var/www/html/Nop.Web.dll
Jetzt laufen nopCommerce, MySQL, Nginx.
8. Installieren Sie Let’sEncrypt SSL
Wir können Certbot verwenden, um ein kostenloses SSL-Zertifikat von Let’s Encrypt für Ihre Domain zu installieren.
sudo apt install python3-certbot-nginx
Führen Sie den folgenden Befehl aus, um das Zertifikat zu installieren und die Umleitung zu HTTPS automatisch zu konfigurieren.
sudo certbot --nginx --redirect --agree-tos --no-eff-email -m [email protected] -d domain.com -d www.domain.com
Jetzt sollten Sie ein SSL-Zertifikat erhalten und es wird automatisch konfiguriert.
Automatische Verlängerung einrichten.
sudo certbot renew --dry-run
Jetzt haben wir alles konfiguriert.
Überprüfen Sie Ihre Domain in Ihrem Browser, Sie sehen die Seite mit der Installationsanleitung.
Für Servername unter Datenbankinformationen Verwenden Sie localhost .
Füllen Sie alle anderen entsprechenden Werte aus und klicken Sie auf Installieren .
Dies wird einige Zeit dauern und dann wird Ihr nopCommerce-Dienst gestartet.
Sobald die Installation abgeschlossen ist, sehen Sie Ihre Standard-Homepage.
Jetzt haben Sie eine erfolgreiche Installation von nopCommerce mit ASP.NET, MySQL, Nginx, Let’sEncrypt SSL.
Schlussfolgerung
Jetzt haben Sie gelernt, wie man nopCommerce auf Ubuntu 20.04 mit Nginx, MySQL und SSL installiert.
Vielen Dank für Ihre Zeit. Wenn Sie auf ein Problem oder Feedback stoßen, hinterlassen Sie bitte unten einen Kommentar.