ForgeCMS
de

CMS

Das Total.js CMS installieren und zum ersten Mal anmelden

CMS · cms@8071e48 cmsinstalldockerlogintokenopenplatform

Ausführen

Das CMS braucht nur Node.js: keine Datenbank, keinen externen Dienst.

git clone https://github.com/totaljs/cms.git
cd cms
npm install
npm run start

npm run start führt node index.js 8000 aus; der Port ist optional und der Standard ist 8000. Mit Docker:

docker pull totalplatform/cms
docker run -p 8000:8000 totalplatform/cms

Die erste Anmeldung

Beim ersten Start legt das CMS seinen einzigen Administrator mit einem zufälligen Login und Passwort an. Öffnen Sie http://localhost:8000/admin/: Bis zur ersten erfolgreichen Anmeldung zeigt die Seite beides in einem Kasten mit einer Schaltfläche, die das Formular ausfüllt. Danach wird die Klartextkopie des Passworts aus den Einstellungen gelöscht und der Kasten erscheint nicht mehr. Nutzen Sie daher sofort das Profil des Admins, um ein eigenes Login und Passwort festzulegen, und melden Sie sich direkt nach dem Start einer neuen Installation zum ersten Mal an.

Bis Sie die erste Seite anlegen, leitet die Adresse / auf /admin/ um, solange das Passwort noch das erzeugte ist; sobald eine Seite mit der Adresse / existiert, liefert / Ihre Website aus.

Drei Arten, den Admin zu authentifizieren

Der Admin liegt unter der Adresse der Zeile $api : /admin/ der Datei config. Die Funktion AUTH in definitions/auth.js entscheidet für die Anfragen dieses Pfads:

ModusWannWie
Sitzungder Standardein mit dem salt des Kontos verschlüsseltes Cookie; Login und Passwort werden mit SHA-256 und diesem Salt geprüft
Tokendie Zeile token : <value> existiert in configsenden Sie es im Header x-token: Die Anfrage läuft als eingebauter Benutzer namens Bot, ein Administrator (sa). Zehn Fehlversuche sperren die Adresse, und ein falsches Token bekommt gar keine Antwort (die Anfrage endet mit einem Timeout)
OpenPlatformdie Einstellungen enthalten op_reqtoken und op_restokendie Leute melden sich mit OpenPlatform an, und seine Gruppen bestimmen die Berechtigungen pages, layouts, widgets, navigation, posts, files, redirects, variables, settings und admin

Die öffentlichen Seiten verwenden die Funktion FUNC.auth, wenn Ihr Code sie definiert (siehe Seiten, Layouts und Navigation); ohne sie ist jeder Besucher anonym.

Wo die Daten liegen

OrtWas er enthält
databases/config.jsonerzeugte Werte der Installation
databases/memorize_account.jsonder Administrator: Name, Login, Passwort-Hash, Cookie-Name und Salt
databases/fs-db/der Dateispeicher: die Metadaten der Website (Seiten, Layouts, Widgets, Navigation, Weiterleitungen, Variablen, Konfiguration) und das HTML jeder Seite und jedes Layouts, die hochgeladenen Dateien und die Beiträge

Um die Website zu verschieben, kopieren Sie den Ordner databases/ oder nutzen Sie das Backup des Admins (die Admin-API).