Ich bin dabei, eine Musikprojekt-Website für einen Freund zu erstellen. Es sollte vorerst ziemlich einfach sein: kein dynamischer Inhalt (Tourdaten usw.) und nur ein paar eingebettete Beispielsongs oder SoundCloud-Links. Ich erwarte nicht, mehr als Vanille-JavaScript und Bootstrap oder Foundation für ein responsives Grid zu verwenden.
Ist das aber genug? Kann ich einfach HTML-, CSS- und JS-Dateien auf einen Host hochladen und fertig sein oder sollte ich mir die Zeit nehmen, einen Back-End-Server in Node oder PHP zu programmieren?
Antworten:
Wenn Sie nicht wissen, ob Sie serverseitigen Code benötigen, tun Sie dies wahrscheinlich nicht. *
* Vorsichtsmaßnahme : Server-seitiger Code ist für die Sicherheit unerlässlich, wenn Sie den Zugriff auf Inhalte, Daten oder Funktionen intern steuern möchten. (Es muss nicht unbedingt Ihr Server sein, siehe letzter Absatz.)
Fragen Sie sich, welches Problem mit serverseitigen Technologien gelöst würde. Wenn Ihnen keiner einfällt (und in Ihrem Fall kann ich auch nicht), brauchen Sie sie nicht.
Beachten Sie, dass mit clientseitigem Code viel mehr möglich ist, als Sie vielleicht denken. Mit JavaScript-Frameworks wie AngularJS oder ReactJS können Sie mithilfe von Ajax über APIs dynamische Inhalte von Drittanbietern integrieren. (Dies schließt das Einbinden in eine API ein, die mit ihrer eigenen Sicherheit umgehen kann.)
quelle
Server-side code is essential for security
Einige Entwickler geben keine Ahnung von Sicherheit. Nicht bevor du ihr Gesicht in ihr ... Chaos wirfst. Wenn Sie eine Authentifizierung benötigen, benötigen Sie ein Backoffice. Wenn Sie Daten speichern müssen, benötigen Sie ein Backoffice, in dem die Daten ein zweites Mal überprüft werden, nachdem sie vom Kunden überprüft wurden.Lesen Sie mehr über statische Site-Generatoren. Mit diesen können Sie eine Site auf programmatische Weise (unter Verwendung von Vorlagen, Daten usw.) und nicht durch manuelles Erstellen von HTML-Code erstellen. Das Ergebnis ist eine Reihe von statischem HTML und CSS, für die kein Backend erforderlich ist.
https://www.staticgen.com/ listet und ordnet eine Reihe solcher Open-Source-Generatoren; auch Closed-Source-Angebote dürften existieren.
quelle
Can I simply upload HTML, CSS, and JS files to a host and be done with it, or should I take the time to program a backend server in Node or PHP?
dies einen Hinweis darauf erfordert, dass es eine dritte, im Falle von OP eher attraktive, Option gibt, IMHO :)Sie können und sollten nur einen statischen Standort verwenden, wenn dies ausreicht, oder einen statischen Standortgenerator verwenden . Warum? Wartbarkeit. Code hat Fehler. Alle paar Wochen wird eine weitere Sicherheitslücke in WordPress gefunden. Wenn Sie ein allgemeines CMS verwenden, müssen Sie es ständig patchen. Anderenfalls enthält die Website Ihres Freundes bald Werbung für illegale Drogen, ISIS-Propaganda, Malware, die auf den Computern der Besucher installiert ist, oder noch schlimmer. Selbst wenn Sie es regelmäßig patchen, kann es sein, dass Sie zu spät sind, sodass Sie ständig nach Hacks suchen müssen. Es gibt Möglichkeiten, dieses CMS zu sichern. Installieren Sie "Sicherheits-Plugins", konfigurieren Sie eine Webanwendungs-Firewall wie "mod_security" usw. Alles nur mehr Arbeit. Sie müssen auch auf dem Laufenden gehalten werden. Manchmal brechen Ihre mod_security-Regeln ein Plugin für WordPress. Sie müssen das analysieren und korrigieren. Mehr Arbeit.
Sie könnten denken, niemand wird diese Seite hacken wollen. Aber für die allgemeinen Sicherheitslücken, die in allgemeinen CMS-Systemen zu finden sind, gibt es bald automatische Bots, die das Web durchsuchen und ALLE Websites mit diesem CMS hacken. Sie wollen nur ihre Links / Malware / Propaganda verbreiten.
Bei einer statischen Site (manuell oder mit einem Generator erstellt) tritt dieses Problem nicht auf.
Wenn Sie Ihr eigenes Backend implementieren, weist es ebenfalls Sicherheitslücken auf (niemand ist perfekt), aber höchstwahrscheinlich wird niemand sie für diese kleine Website ausnutzen. Aber was möchten Sie implementieren? Wenn Sie einen Editor erstellen möchten, in dem Ihr Freund die Tourdaten selbst ändern kann, überlegen Sie, wie lange Sie brauchen, bis die Verwendung ohne Ihre Hilfe für ihn einfach genug ist. Wie oft kannst du mit diesem Zeitbudget die Daten für ihn einfach schnell ändern?
Meiner Meinung nach verwenden heutzutage viel zu viele Leute CMS-Systeme für jede Site, da statisches HTML "alt" ist. Wenn Sie nichts benötigen, was mit HTML5 nicht möglich ist, verwenden Sie serverseitigen Code. Aber wenn Sie es nicht brauchen, sparen Sie viel Zeit ohne es.
quelle
Sie müssen die Backend-Programmierung nur dann durchführen, wenn Sie sie benötigen.
Selbst grundlegende Funktionen wie E-Mail-Formulare erfordern jedoch normalerweise eine grundlegende Backend-Programmierung. Wenn es sich nur um eine Anzeigeseite handelt, ist das in Ordnung.
quelle
Nicht unbedingt, aber es gibt einige Probleme, auf die Sie wahrscheinlich stoßen, wenn Sie die gesamte Site in einfachem HTML erstellen.
Viele Sites haben auf mehreren Seiten die gleichen Menü-, Kopf- und Fußzeilenelemente. Wenn Sie diese einfach kopieren und von einer Seite auf eine andere einfügen, wird dies möglicherweise mühsam und fehleranfällig, da die Site größer wird und Sie in diesen Bereichen weitere Änderungen vornehmen müssen.
In den Tagen, bevor die serverseitige Programmierung so verbreitet war, bestand eine übliche Möglichkeit, dies zu beheben , darin, Frames zum Einbetten dieser Bereiche in jede Seite zu verwenden. Dies war vor einigen Jahren in Ungnade gefallen, daher empfehle ich, es jetzt nicht zu tun. Sie können stattdessen einen einfachen serverseitigen Code schreiben, um diese allgemeinen Elemente auf jeder Seite anzuzeigen.
Ich würde anderen hier zustimmen, die empfohlen haben, ein Standard-CMS zu verwenden.
quelle