So installieren Sie Thelia 2.3 unter CentOS 7
Verwenden Sie ein anderes System? Thelia ist ein Open-Source-Tool zum Erstellen von E-Business-Websites und zum Verwalten von Online-Inhalten, die in PHP geschrieben wurden. Thelia Quellcode i
In diesem Tutorial richten wir einen Webserver mit einem Reverse-Proxy ein. Das CMS, das wir verwenden werden, ist Keystone.js, ein bekanntes Webanwendungsframework, das auf Express.js basiert. Der Reverse-Proxy, den wir verwenden werden, ist Nginx, ein kostenloser Open-Source-Reverse-Proxy sowie ein HTTP-Server. Die Datenbank, die wir verwenden werden, ist MongoDB, eine NoSQL-Dokumentendatenbank. Dies setzt voraus, dass Sie eine Domain mit eingerichteten Datensätzen haben. Wenn Sie dieses Set nicht haben, kümmern Sie sich darum und kehren Sie zu diesem Tutorial zurück.
Zunächst installieren wir Node.js, einen Javascript-Interpreter, der auf der Chrome V8-Javascript-Engine basiert.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
Als nächstes installieren wir Nginx, unseren Reverse-Proxy.
sudo apt update
sudo apt install nginx
Dadurch werden die Paketlisten aktualisiert und Nginx installiert. Sobald die Installation abgeschlossen ist, richten wir unser Knotenprojekt ein.
Erstellen Sie unser Knotenprojekt. Erstellen Sie dazu einfach einen neuen Ordner.
mkdir website
Dann erstellen wir unsere package.json
Datei. Führen npm init
Sie dazu einfach Ihr Terminal aus, füllen Sie die Felder aus und antworten Sie yes
zur Bestätigung mit " ". Sobald Sie die package.json
Datei erstellt haben, installieren wir die folgenden Knotenmodule.
sudo npm install -g generator-keystone
sudo npm install -g yo
Führen Sie nach dem Herunterladen die folgenden Schritte aus.
yo keystone
Füllen Sie die erforderlichen Felder aus. Es wird Sie für die fragen project name
, die template engine
, email
für Bedienfeld, und so weiter. Wenn Sie nicht wissen, was Sie auswählen sollen, sind die Standardeinstellungen in Ordnung. Nachdem Sie Ihr Keystone-Setup konfiguriert haben, können wir testen, ob unser Server ausgeführt wird, indem Sie Folgendes eingeben node keystone
, um Ihre Anwendung zu starten. Standardmäßig wird Ihre Anwendung localhost
am Port ausgeführt 3000
. Beachten Sie, dass eine Datenbank nicht sofort für Sie verfügbar ist, wenn Sie MongoDB nicht installiert haben. Wie Sie es später installieren, erfahren Sie im Tutorial.
Hier ist das grundlegende Verzeichnislayout für Keystone.js:
/lib
- Hier speichern Sie Ihre benutzerdefinierten Bibliotheken und anderen Code.
/models
- Hier speichern Sie die Datenbankmodelle Ihrer Anwendung. KeystoneJS verwendet MongoDB als Datenbankanbieter.
/public
- Hier werden Ihre statischen Dateien (CSS, JS, Bilder usw.) gespeichert.
/routes/api
- Hier werden die API-Controller Ihrer Anwendung gespeichert.
/routes.views
- Anwendungsansichts-Controller werden hier gespeichert.
/templates
- Hier werden alle Vorlagendateien Ihrer Anwendung gespeichert.
/updates
- Hier werden Ihre Migrationsskripte gespeichert.
package.json
- Dies ist Ihre npm-Konfigurationsdatei, die der Generator für uns generiert hat.
keystone.js
- Unsere Hauptstartdatei führen wir aus, wenn wir die Website starten.
Wie bereits erwähnt, ist unsere Datenbank MongoDB, eine zuverlässige dokumentenorientierte NoSQL-Datenbank. Wenn Sie MongoDB bereits installiert haben, können Sie diesen Abschnitt überspringen. Wenn nicht, erfahren Sie hier, wie Sie es unter Ubuntu 16.04 installieren.
Importieren Sie den öffentlichen Schlüssel, der für das mongoDB-Paket verwendet wird.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Erstellen Sie die Listendatei, mit der das Paket installiert wird.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Aktualisieren Sie Ihre Paketlisten mit apt
.
sudo apt update
Installieren Sie schließlich MongoDB.
sudo apt install mongodb-org -y
Wenn diese Installation abgeschlossen ist, starten Sie MongoDB.
sudo service mongod start
Dadurch wird der MongoDB-Prozess am Port gestartet 27017
.
MongoDB wird in der gesamten Anwendung verwendet und zum Speichern von Informationen verwendet, die wir für unsere Modelle verwenden, z. B. ein User
Modell. Keystone verwendet es als Datenbank Ihrer Wahl. Derzeit können Sie keine anderen Datenbankanbieter verwenden.
Jetzt ist es Zeit, PM2 (Process Manager 2) zu installieren. PM2 ist ein Prozessmanager für Node.js-Anwendungen in Form eines npm-Moduls. Es bietet Ihnen eine einfache Möglichkeit, Ihre Anwendungen zu verwalten und im Hintergrund auszuführen. Da es sich um NPM handelt, müssen wir zur Installation nur Folgendes ausführen.
sudo npm install pm2 -g
Dies weist npm an, es global zu installieren, damit wir es überall in unserem System verwenden können.
Zuvor haben wir unsere Webanwendung mit ausgeführt node keystone
. Bei PM2 ist das etwas anders. Wir führen jetzt unsere Knoten-App wie folgt aus.
pm2 start keystone.js
Dadurch wird unsere PM2-Anwendung zu unserer Prozessliste hinzugefügt, und ein kleines Feld wird angezeigt, damit Sie sehen können, dass sie tatsächlich online ist. Beachten Sie das Feld id
für Ihren Prozess. Halten Sie dies in der Nähe, da wir später noch viele Hinweise darauf geben werden.
Anzeigen der Protokolle für Ihre Anwendung.
pm2 logs [id]
Zum Beispiel, pm2 logs 0
wenn dies Ihre erste PM2-Anwendung ist.
So stoppen Sie Ihre Webanwendung jederzeit.
pm2 stop [id]
So löschen Sie Ihre Anwendung vollständig.
pm2 delete [id]
PM2 verfügt sogar über ein Überwachungs-Dashboard, wenn Sie einige grundlegende Statistiken für Ihre Anwendung anzeigen möchten, und Sie können damit darauf zugreifen.
pm2 monit
Hier werden einige grundlegende Informationen wie RAM-Auslastung, CPU-Auslastung und Betriebszeit angezeigt.
Eine großartige Funktion, die PM2 bietet, ist watching
. Im Wesentlichen erkennt PM2 Änderungen an einer der Dateien im selben Verzeichnis wie Ihre Startdatei automatisch und startet Ihre Anwendung automatisch neu. Um es zu aktivieren, starten Sie einfach Ihre Anwendung neu, übergeben Sie ihr jedoch ein Überwachungsflag.
pm2 restart [id] --watch
Um die Überwachung zu deaktivieren, nachdem sie aktiviert wurde, führen Sie einfach denselben Befehl erneut aus. Die Überwachung wird deaktiviert.
In diesem Tutorial werden wir aufhören zu schauen.
Stellen Sie sicher, dass Sie Nginx installiert haben. Wenn dies aus irgendeinem Grund nicht der Fall ist, lesen Sie die obigen Schritte.
Passen Sie Ihre Firewall-Einstellungen an. Unter Ubuntu ufw
ist die offizielle Firewall. Standardmäßig sind Verbindungen am Port blockiert 80
. Wir müssen eine Ausnahme für Nginx on Port hinzufügen 80
, auf der unsere Webanwendung ausgeführt wird.
sudo ufw allow 'Nginx HTTP'
Stellen Sie sicher, dass Ihr Nginx-Server ausgeführt wird.
systemctl status nginx
Active
Wenn Sie unter dem Abschnitt sehen active (running)
, sind Sie fertig. Wenn nicht, können Sie versuchen, den Dienst neu zu starten.
systemctl restart nginx
Löschen Sie die Standard-Nginx-Konfigurationsdatei.
sudo rm /etc/nginx/sites-available/default
Erstellen Sie eine neue und rufen Sie sie einfach auf node
.
sudo nano /etc/nginx/sites-available/node
Fügen Sie Folgendes in die Datei ein und ersetzen Sie es example.com
durch Ihre Website-Domain.
listen 80;
server_name example.com;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:3000";
}
}
Beachten Sie, dass dies die proxy_pass
IP angibt, auf der unsere Keystone-App lokal ausgeführt wird und die sich localhost
am Port befindet 3000
. listen 80
ist der Port, an den die App geleitet werden soll, in diesem Fall Port 80
.
Dann müssen wir einen Symlink oder einen symbolischen Link zu einem Ordner namens erstellen sites-enabled
. Der Unterschied zwischen sites-enabled
und sites-available
besteht darin, dass sites-enabled
es tatsächlich von Nginx geladen wird.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Jetzt ist Ihre Konfigurationsdatei in sites-available
einsatzbereit und wird von geladen sites-enabled
. Starten Sie Nginx einfach neu, um die Konfiguration so anzuwenden, dass sie wirksam wird.
sudo systemctl restart nginx
Starten Sie abschließend Ihre PM2-Anwendung neu
pm2 restart [id]
Jetzt können Sie in einem Browser zu Ihrer Domain navigieren und sehen einen Welcome to Keystone
Bildschirm mit einem Bereich, in dem Sie sich anmelden können.
Wenn Sie es sehen, haben Sie erfolgreich einen Node.js-Produktionswebserver eingerichtet. Wenn nicht, haben Sie möglicherweise einen Schritt falsch ausgeführt, und Sie möchten möglicherweise zurückgehen und jeden Schritt sorgfältig ausführen.
Sie können mehr über Nginx erfahren, indem Sie deren Website besuchen .
Ich hoffe, Ihnen hat dieses Tutorial gefallen, und ich hoffe, dies hat Ihnen geholfen, Ihren eigenen Webserver für die Produktion auf Ihrem Vultr VPS einzurichten.
Verwenden Sie ein anderes System? Thelia ist ein Open-Source-Tool zum Erstellen von E-Business-Websites und zum Verwalten von Online-Inhalten, die in PHP geschrieben wurden. Thelia Quellcode i
Verwenden Sie ein anderes System? Fuel CMS ist ein CodeIgniter-basiertes Content-Management-System. Der Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie t
Verwenden Sie ein anderes System? DotCMS ist ein Open-Source-Content-Management-System für Unternehmen, das in Java geschrieben wurde. Es enthält fast alle erforderlichen Funktionen
Verwenden Sie ein anderes System? WonderCMS ist ein Open Source, schnelles und kleines Flatfile-CMS, das in PHP geschrieben wurde. WonderCMS-Quellcode wird auf Github gehostet. Dieser Leitfaden wird
Verwenden Sie ein anderes System? Redaxscript 3.2 CMS ist ein modernes und ultraleichtes, kostenloses und Open-Source-Content-Management-System (CMS) mit Rocket-Fas
Verwenden Sie ein anderes System? 1.0 Oktober CMS ist ein einfaches und zuverlässiges, kostenloses und Open Source Content Management System (CMS), das auf dem Laravel-Framework basiert
Verwenden Sie ein anderes System? Subrion 4.1 CMS ist ein leistungsstarkes und flexibles Open-Source-Content-Management-System (CMS), das einen intuitiven und klaren Inhalt bietet
Verwenden Sie ein anderes System? ImpressPages CMS 5.0 ist ein einfaches und effektives, kostenloses und Open Source, benutzerfreundliches, MVC-basiertes Content Management System (CMS).
Verwenden Sie ein anderes System? Einführung BoltWire ist ein kostenloses und leichtes Content-Management-System, das in PHP geschrieben wurde. Im Vergleich zu den meisten anderen Content Managern
Verwenden Sie ein anderes System? TextPattern CMS 4.6.2 ist ein einfaches, flexibles, kostenloses und Open Source Content Management System (CMS), mit dem Webdesigner t
Verwenden Sie ein anderes System? Fuel CMS ist ein CodeIgniter-basiertes Content-Management-System. Der Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie t
Bolt ist ein Open-Source-CMS, das in PHP geschrieben wurde. Der Quellcode von Bolts wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie Sie Bolt CMS auf einem neuen CentOS 7 Vult installieren
Verwenden Sie ein anderes System? Redaxscript 3.2 CMS ist ein modernes und ultraleichtes, kostenloses und Open-Source-Content-Management-System (CMS) mit Rocket-Fas
Verwenden Sie ein anderes System? Couch CMS ist ein einfaches und flexibles, kostenloses und Open-Source-Content-Management-System (CMS), mit dem Webdesigner entwerfen können
Verwenden Sie ein anderes System? Anchor CMS ist eine supereinfache und extrem leichte, kostenlose und Open-Source-Blog-Engine für das Content Management System (CMS)
Verwenden Sie ein anderes System? BigTree CMS 4.2 ist ein schnelles und leichtes, kostenloses und Open-Source-Content-Management-System (CMS) für Unternehmen mit umfangreichen Funktionen
Raneto ist eine kostenlose Open-Source-Wissensdatenbank, die auf Node.js basiert und einfach einzurichten und zu verwenden sowie einfach zu verwalten ist. Kategorien und Seiten ar
Verwenden Sie ein anderes System? Omeka Classic 2.4 CMS ist eine kostenlose Open-Source-Plattform für digitales Publizieren und Content Management System (CMS) für den Austausch von Digita
Verwenden Sie ein anderes System? Craft CMS ist ein in PHP geschriebenes Open Source CMS. Craft CMS-Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie Sie installieren
Verwenden Sie ein anderes System? Einführung Automad ist ein Open Source File-basiertes Content Management System (CMS) und eine in PHP geschriebene Template Engine. Automa
Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist
ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.
Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+
Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.
Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren
13 Tools zur kommerziellen Datenextraktion von Big Data
Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true
Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.
Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1
KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.