Was sollte ein Programmierer, der die technischen Details einer Webanwendung implementiert, beachten, bevor er die Site veröffentlicht? Wenn Jeff Atwood HttpOnly-Cookies, Sitemaps, und Cross-Site-Request-Forgeries alle auf der gleichen Website vergessen kann, welche wichtigen Dinge könnte ich dann auch vergessen?
Ich betrachte das Ganze aus der Sicht eines Webentwicklers, d.h. jemand anderes erstellt das eigentliche Design und den Inhalt der Website. Auch wenn die Benutzerfreundlichkeit und der Inhalt wichtiger sind als die Plattform, haben Sie als Programmierer wenig Einfluss darauf. Worüber Sie sich Sorgen machen müssen, ist, dass Ihre Implementierung der Plattform stabil ist, gut funktioniert, sicher ist und alle anderen Geschäftsziele erfüllt (z. B. nicht zu viel kostet, zu lange dauert und bei Google so gut rangiert, wie es der Inhalt zulässt).
Stellen Sie sich dies aus der Perspektive eines Entwicklers vor, der bereits einige Arbeiten für Intranet-Anwendungen in einer recht vertrauenswürdigen Umgebung durchgeführt hat und nun zum ersten Mal eine potenziell populäre Website für das gesamte große, böse World Wide Web erstellen will.
Außerdem suche ich nach etwas Konkreterem als nur einer vagen Antwort zu Webstandards. Ich meine, HTML, JavaScript und CSS über HTTP sind so ziemlich eine Selbstverständlichkeit, vor allem wenn ich bereits angegeben habe, dass Sie ein professioneller Webentwickler sind. Darüber hinaus: Welche Standards? Unter welchen Umständen, und warum? **Liefern Sie einen Link zur Spezifikation des Standards.
Der Gedanke dahinter ist, dass die meisten von uns bereits das meiste auf dieser Liste wissen sollten. Aber vielleicht gibt es ein oder zwei Punkte, mit denen Sie sich noch nicht beschäftigt haben, die Sie nicht ganz verstehen oder von denen Sie vielleicht noch nie gehört haben. Schnittstelle und Benutzererfahrung
rel="nofollow"
zu von Benutzern erzeugten Links hinzu um Spam zu vermeiden.rel="noopener noreferrer"
auf alle vom Benutzer bereitgestellten Links mit target="_blank"
, um zu verhindern, dass JavaScript auf der Zielseite Ihre Seite an einen anderen Ort weiterleitet, z. B. eine gefälschte Anmeldeseite. Weitere Informationenfavicon.ico
im Stammverzeichnis der Website vorhanden ist, d.h. /favicon.ico
. [Die Browser fordern sie automatisch an (http://mathiasbynens.be/notes/rel-shortcut-icon), auch wenn das Symbol im HTML gar nicht erwähnt wird. Wenn Sie kein /favicon.ico
haben, wird dies zu einer Menge 404s führen und die Bandbreite Ihres Servers belasten.
SEO (Suchmaschinen-Optimierung)example.com/pages/45-article-title
anstelle von example.com/index.php?page=45
.#
für dynamische Inhalte verwenden, ändern Sie das #
in #!
und auf dem Server ist $_REQUEST["_escaped_fragment_"]
das, was googlebot anstelle von #!
verwendet. Mit anderen Worten, ./#!page=1
wird zu ./?_escaped_fragments_=page=1
. Auch für Benutzer, die FF.b4 oder Chromium verwenden, ist history.pushState({"foo": "bar"}, "About", "./?page=1");
ein großartiger Befehl. Auch wenn sich die Adressleiste geändert hat, wird die Seite nicht neu geladen. So können Sie ?
anstelle von #!
verwenden, um dynamische Inhalte beizubehalten und dem Server bei der Übermittlung des Links per E-Mail mitzuteilen, dass wir nach dieser Seite kommen, und die AJAX muss keine weitere Anfrage stellen./sitemap.xml
.<link rel="canonical" ... />
, wenn Sie mehrere URLs haben, die auf denselben Inhalt verweisen; dieses Problem kann auch über Google Webmaster Tools gelöst werden.301 Moved Permanently
), die nach www.example.com
fragen, auf example.com
um (oder umgekehrt), um zu verhindern, dass das Google-Ranking zwischen beiden Seiten aufgeteilt wird.