HTTP (Hypertext Transfer Protocol) / HTTPS

Aus induux Wiki
Letzter Editor
Philipp
induux international
aktualisiert am 26.05.2020 - 10:15:36
Angebot
Anzeige
HTTP


{{#set: SEOCheck=1}} {{#set: checkIcon=□}} {{#set: Ergebnis=}} {{#set: PageName=HTTP Server}}



👉 Relevanz: SEO Check / Audit
Topic:HTTP Server
Bereich:Web-Server
Testfrage:Ist der Webserver korrekt konfiguiert mit SSL und HTTP/2?
QuickWin Ratio:50
Notwendigkeit:MUSS
Automatisierbar:Nein


Das HTTP (Hypertext Transfer Protocol) ist das Protokoll (die Sprache) zwischen Web-Client (Browser, Crawler..) und Web-Server (HTTPD). HTTPS (Hypertext Transport Protocol Secure ) ist die Übertragung von HTTP über einen TLS gesicherten Tunnel. (P)

Frage / Defintion: Was ist Hypertext Transfer Protocol (Secure)?
Auch oft gesucht: HTTP, HTTPS




Protokollversionen

Bei den Protokollversionen ist zwischen dem älteren HTTP/1 und dem neueren HTTP/2 aus dem zu unterscheiden. HTTP/2 hat deutliche Geschwindigkeitsvorteile gegenüber der älteren Version und sollte aus SEO-Gründen überall eingesetzt werden, wo dies möglich ist.

Der Geschwindigkeitsvorteil der neueren Version wird beispielsweise an der Seite httpvshttps deutlich. Diese soll zwar den Geschwindigkeitsunterschied zwischen verschlüsselten und unverschlüsselten Seiten darstellen, dies wird aber dadurch erreicht, dass die unverschlüsselte Seite mit HTTP/1.1 und die verschlüsselte mit dem schnelleren HTTP/2 ausgeliefert wird.

Obwohl HTTP/2 prinzipiell mit und ohne Verschlüsselung standardisiert wurde, haben sich die großen Browserhersteller dazu entschieden, HTTP/2 nur mit TLS-Verschlüsselung zu implementieren. Daher ist HTTPS de facto Voraussetzung für den Einsatz von HTTP/2.

HTTPS (Hypertext Transfer Protocol Secure)

Hypertext Transport Protocol Secure (HTTPS) ist die Übertragung von HTTP über einen TLS gesicherten Tunnel.

Für den Einsatz von HTTPS sind auf dem Webserver Zertifikate, die von vertrauenswürdigen Stellen ausgestellt wurden, notwendig. Diese können von einer Certification Authority (CA) eingekauft werden oder von kostenlosen Zertifizierungsstellen wie LetsEncrypt bezogen werden. Das Zertifikat dient für den User der Identitätsprüfung des Servers und der Überprüfung der Verschlüsselung.

Für die Einrichtung auf dem Webserver sind eine Zertifikatsdatei, ein dazugehöriger geheimer Schlüssel in einem Keyfile und häufig auch ein Zertifikat einer Zwischenzertifizierungsstelle notwendig. Das Keyfile ist dabei geheim und es muss darauf geachtet werden, dass es nicht in die Hände von Unbefugten gelangt, da diese sich sonst erfolgreich als der Webserver ausgeben könnten.

Es ist in apache2, nginx und haproxy möglich, das Zertifikat und das intermediate-Zertifikat in einer einzigen Datei zu speichern. Dabei ist zu beachten, dass das Webserver-Zertifikat oben stehen muss und das Intermediate darunter. Dieses Format wird häufig fullchain.pem genannt.

Wildcard Zertifikat

Wildcard Zertifiakte erkennt man am Sternchen. Diese Zertifikate ermöglichen es, Subdomains unter der Hauptdomain abzusichern. Vor dem Namen der Hauptdomain enthalten die Zertifikate ein Sternchen.

Beispielsweise sichert das Zertifikat für *.example.com folgende Domains ab:

  • www.example.com
  • mail.example.com
  • shop.example.com

Es muss darauf geachtet werden, dass dieses Zertifikat Domains der gleichen Ebene abdeckt. Die Domain shop.service.example.com wird somit nicht abgedeckt.

Vorteil dieses Zertifikates ist, dass Kosten für einzelne Zertifikate, sowie Zeit bei der Installation und Verwaltung gespart werden kann.

SAN Zertifiakt

SAN steht für Subject Alternative Name - Dieses Zertifikat ermöglicht es mehrere Domains mit nur einem SSL Zertifikat abzusichern. Sie werden auch Multi-Domain Zertifiakte genannt, da sie mehrere nicht zusammenhängende Domains, Server oder Hostnames absichern. Die zusätzlichen Namen können während der Laufzeit geändert bzw. ergänzt werden.

Unterschied SAN und Wildcard Zertifikat

  • Das SAN Zertifikat unterstützt auch veränderte Hostnamen wie beispielsweise example.de und example.com
  • Das Wildcard Zertifikat unterstützt nur Subdomains eines Hostnames
  • Das Wildcard Zertifikat unterstützt Subdomains der 1. Ebene, also mail.example.com aber nicht www.mail.example.com

Wichtig für SEO

Google bevorzugt bei den Suchergebnissen Seiten, die diese geschützte Form der Datenübertragung anbieten. HTTPS ist eine de facto-Voraussetzung für die schnellere Datenübertragung mittels des HTTP/2-Protokolls.

Die SSL-Verschlüsselung der Website stärkt das Vertrauen des Besuchers und ist daher besonders im Bereich E-Commerce wichtig. Der User sieht sofort, dass die Seite verschlüsselt ist und kein dritter den Datenaustausch mitverfolgen kann. Durch dieses "Qualitätssiegel" bleibt der User länger auf der Webseite --> die Absprungrate sinkt.

HTTP Status Codes

Neben dem eigentlichen Inhalt der Webseite liefert das HTTP Protokoll auch die sogenanntena HTTP Status Codes zurück. In den meisten Fällen werden sind diese dem Webseitenbesucher nicht oder nur im Fehlerfall angezeigt. Ein bekanntes Beispiel für solch eine Meldung ist 404 Page not Found.

Diese Rückgabewerte signalisieren dem Browser oder Suchmaschinencrawler, um welche Art von Antwort es sich handelt. Beispielsweise ob der angeforderte Inhalt zurückgegeben wurde (200), oder ob er an eine andere Stelle umgezogen ist (301, 302, ...)

Die HTTP-Status-Codes sind dabei in fünf Blöcke aufgeteilt:

1xx Info Die Anfrage wurde vom Server angenommen, aber noch nicht vollständig bearbeitet
2xx Erfolg Die Anfrage wurde angenommen und erfolgreich beantwortet
3xx Redirect Der Inhalt der angeforderten Seite ist umgezogen
4xx Fehler auf der Benutzerseite Der Benutzer hat eine ungültige Anfrage gesendet
5xx Serverfehler Der Server ist beim Bearbeiten der Anfrage auf einen Fehler gestossen


100 Continue


101 Switching Protocols


102 Processing (WebDAV)


2xx Success

200 OK

Der Rückgabewert 200 zeigt dem Browser an, dass die Anfrage nach dem Inhalt erfolgreich war und der mitgegebene Inhalt angezeigt werden kann. Der Benutzer des Browsers bekommt diesen Code üblicherweise nicht zu sehen.


201 Created



202 Accepted


203 Non-Authoritative Information


204 No Content



205 Reset Content


206 Partial Content




207 Multi-Status (WebDAV)


208 Already Reported (WebDAV)


226 IM Used




3xx Redirection

Alle HTTP-Codes, die mit einer 3 beginnen, haben etwas mit der automatischen Um-/Weiter-leitung einer HTTP-Anfrage zu tun.


300 Multiple Choices

301 Moved Permanently

Der Tag für den Website-Relaunch, SEO und Website-Gesundheit. Der Return-Code 301 signalisiert dem Browser oder Crawler, dass der Inhalt permanent auf die angegebene Adresse umgezogen ist. Daher landen 301-Redirects im Cache des Browsers oder der Suchmaschine.


302 Found

Der angeforderte Inhalt befindet sich jetzt temporär an einem anderen Ort. Im Gegensatz zu 301 signalisiert 302, dass der Inhalt nur vorübergehend an der angegebenen Stelle abgerufen werden soll. Daher werden 302-Redirects in der Regel nicht gecached.

303 See Other

304 Not Modified

Die Seite wurde seit dem letzten Seitenbesuch nicht verändert und kann daher aus dem Cache (zB. Browsercache) geladen werden.

305 Use Proxy

307 Temporary Redirect

308 Permanent Redirect (experimental)

4xx Client Error

400 Bad Request


401 Unauthorized


402 Payment Required


403 Forbidden


404 Not Found


405 Method Not Allowed


406 Not Acceptable



407 Proxy Authentication Required


408 Request Timeout

409 Conflict

Die angeforderte Resource befindet sich nicht in einem Status um Anfragen entgegen zu nehmen.


410 Gone


411 Length Required


412 Precondition Failed


413 Request Entity Too Large


414 Request-URI Too Long


415 Unsupported Media Type


416 Requested Range Not Satisfiable


417 Expectation Failed


418 I'm a teapot

Ursprünglich als Aprilscherz in RFC 2324 spezifiziert sagt dieser Return-Code aus, dass der Server die Anfrage nicht bearbeiten kann, weil er selbst eine Teekanne ist. Als kleinen SEO-Scherz hat Google diesen auf seiner Seite implementiert. Möglicherweise wird der Return-Code im Bereich IoT wieder relevant.

Error 418 auf Google


422 Unprocessable Entity (WebDAV)


423 Locked (WebDAV)


424 Failed Dependency (WebDAV)


425 Reserved for WebDAV


426 Upgrade Required


428 Precondition Required



429 Too Many Requests



431 Request Header Fields Too Large



444 No Response (Nginx)

449 Retry With (Microsoft)


451 Unavailable For Legal Reasons

5xx Server Error

500 Internal Server Error


501 Not Implemented


502 Bad Gateway

In einem Setup mit Reverse-Proxy oder Caching-System vor der eigentlichen Seite, kann dieses (=das Gateway) den eigentlichen Webserver nicht erreichen.


503 Service Unavailable


504 Gateway Timeout


505 HTTP Version Not Supported


506 Variant Also Negotiates (Experimental)


507 Insufficient Storage (WebDAV)


508 Loop Detected (WebDAV)


510 Not Extended


511 Network Authentication Required


599 Network connect timeout error

see: https://www.restapitutorial.com/httpstatuscodes.html

Anhänge

Diese Seite hat noch keine Anhänge, du kannst aber neue hinzufügen.

Ähnliche Artikel zu Website