Errors on your website are never desired nor having sense. In order to improve the experience, you should get rid of it. But why, you may ask? It doesn’t hurt anybody … Oh, it does!
„Why you should care about your website’s 404 errors“ weiterlesenWarum du dich um 404-Fehler deiner Website kümmern solltest
Fehler auf deiner Website sind nie gewünscht und auch nicht sinnvoll. Um das Erlebnis zu verbessern, solltest du sie beheben. Aber warum, magst du dich fragen? Es tut keinem weh … oh, tut es!
„Warum du dich um 404-Fehler deiner Website kümmern solltest“ weiterlesenMTA-STS für den eigenen E-Mail-Server einrichten
MTA-STS lässt sich bereits mit wenigen Handgriffen einrichten, wenn der E-Mail-Server verschlüsselte Verbindungen beherrscht (beispielsweise per TLS). Dann können andere E-Mail-Server prüfen, ob der eigene E-Mail-Server berechtigt ist, E-Mails über die jeweilige Domain zu versenden oder nicht.
„MTA-STS für den eigenen E-Mail-Server einrichten“ weiterlesennginx: OCSP Heften korrekt einrichten
OCSP Heften, besser bekannt unter „OCSP stapling“, bietet dem Client die Möglichkeit, die Gültigkeit eines Zertifikats abzufragen, wodurch die Sicherheit gesteigert wird. Es gibt viele Anleitungen bezüglich der Einrichtung, leider habe ich noch keine vollständige gefunden. Oftmals wird ein Teil weggelassen, der für manche vielleicht selbstverständlich ist – für andere jedoch nicht. Aus diesem Grunde möchte ich hier nun eine möglichst vollständige Anleitung präsentieren, wie man selbst OCSP stapling korrekt einrichten kann.
„nginx: OCSP Heften korrekt einrichten“ weiterlesennginx: Disable logging for certain request(s)
As long as configured in a server
directive, nginx logs every request in a logfile. Whenever you want to exclude (a) certain request(s), e. g. with dynamical parameters, from getting logged, it’s not that easy. For this reason I want to show a possible solution which works on nginx since version 1.7.0. The used map
feature is not included in older nginx versions.
nginx: Logging für bestimmte Anfrage(n) deaktivieren
Sofern in einer server
-Direktive angegeben, speichert nginx alle Anfragen in einer Logdatei ab. Will man bestimmte Anfragen, beispielsweise mit dynamischen Parametern, von dieser Speicherung ausnehmen, ist das nicht ganz so einfach. Aus diesem Grunde möchte ich hier eine Möglichkeit aufzeigen, wie das ab nginx 1.7.0 funktioniert. Die dafür genutzte map
-Funktion gibt es in älteren nginx-Versionen leider nicht.
OCSP Stapling bei Zertifikatserver hinter CloudFlare
OCSP Stapling gibt dem Serveradministrator die Möglichkeit, seine SSL-Zertifikate für den Benutzer als gültig zu deklarieren, ohne dass selbiger erst den Zertifikatserver des Ausstellers abrufen muss. Bei der Erstellung eines OCSP Responders jedoch gibt es einige Tücken. Dies ist insbesondere dann der Fall, wenn der Zertifikatserver hinter CloudFlare geschützt ist.
„OCSP Stapling bei Zertifikatserver hinter CloudFlare“ weiterlesenOS X: nginx, PHP-FPM und MySQL mit „brew“ installieren
Leider fehlt Mac OS X eine richtige Paketverwaltung, wie man sie von Unix-Derivaten wie Debian oder Ubuntu kennt. Somit ist auch das Installieren von Paketen wie nginx, PHP-FPM und MySQL schwieriger – mag man meinen. Glücklicherweise jedoch gibt es eine externe Paketverwaltung. Diese nennt sich „brew“ und läuft vollkommen autark neben dem System, da sie eigene Verzeichnisse erstellt und lediglich in die eigentlichen Programmverzeichnisse verlinkt.
„OS X: nginx, PHP-FPM und MySQL mit „brew“ installieren“ weiterlesennginx: SPDY/3 unter Debian Wheezy aktivieren
Mit SPDY lassen sich verschlüsselte Verbindungen (SSL/TLS), welche normal über das alte Format HTTPS ausgeliefert werden, teils deutlich beschleunigen. Besonders für Seiten, die komplett verschlüsselt sind, lohnt es sich daher im Allgemeinen, SPDY zu nutzen.
„nginx: SPDY/3 unter Debian Wheezy aktivieren“ weiterlesennginx: Bots/Browserkennungen sperren
Bekanntlich nutzt nginx keine .htaccess-Dateien, um die Performance stets hoch zu halten. Aus diesem Grunde gestaltet sich auch das Sperren bestimmter Browserkennungen von z. B. Bots etwas anders, kann aber über eine einfache if-Abfrage in der Konfiguration erreicht werden.
„nginx: Bots/Browserkennungen sperren“ weiterlesennginx: Sichere SSL-Verbindung aktivieren
Die grundsätzliche Konfiguration von SSL ist bei einem Webserver nicht sehr schwer. Um diese soll es hier jedoch auch gar nicht gehen. Viel mehr geht es darum, diese Verbindung zu optimieren und dadurch zusätzlich abzusichern, denn einigen Berichten zufolge kann die NSA die standardmäßig genutzte Verschlüsselungsmethode RC4 bei SSL-Verbindung in Echtzeit entschlüsseln.
„nginx: Sichere SSL-Verbindung aktivieren“ weiterlesen„The plain HTTP request was sent to HTTPS port“ unter nginx beheben
Nutzt man in seiner Server-Konfiguration sowohl HTTP als auch HTTPS und verbindet die Webseite mit PHP, so kann es schnell vorkommen, dass man von nginx den Fehler „The plain HTTP request was sent to HTTPS port“ erhält.
„„The plain HTTP request was sent to HTTPS port“ unter nginx beheben“ weiterlesennginx Fehler – 413 Request Entity Too Large
Vor allem bei größeren Dateiuploads, z. B. via PHP, kann es vorkommen, dass nginx die Fehlermeldung „413 Request Entity Too Large“ anzeigt und den Dateiupload abbricht. Der Grund dafür ist so simpel wie auch schnell behoben.
„nginx Fehler – 413 Request Entity Too Large“ weiterlesenLogrotate bei Apache unter Windows
Unter Linux ist der so genannte Logrotate schon in Apache integriert, unter Windows muss man hier selbst nochmals Hand anlegen und die Konfiguration anpassen.
„Logrotate bei Apache unter Windows“ weiterlesenImagick (ImageMagick) in PHP unter Windows aktivieren
Ähnlich wie andere Module lässt sich auch Imagick einfach in PHP integrieren. Dafür benötigt es lediglich eine entsprechende *.dll-Datei.
Allerdings benötigt Imagick zwingend das Programm ImageMagick, auf dem es basiert und deren Funktionen es nutzt. Daher möchte ich einmal kurz die Vorgehensweise erklären, wie man beides erfolgreich aktivieren kann.
Perl unter lighttpd aktivieren
Liest man die offiziellen Docs zu lighttpd, wird einem gesagt, dass für die Nutzung von Perl unter lighttpd die Installation von Perl von einer bestimmten Quelle vorgenommen werden muss. Das stimmt so jedoch nicht.
„Perl unter lighttpd aktivieren“ weiterlesenSoftwareversion von lighttpd nicht mitsenden/ändern
Sofern das DirectoryListing unter lighttpd aktiv ist, wird normal auch die Softwareversion in folgender Weise unter der Dateiauflistung angezeigt: lighttpd/1.4.28.
Um es Angreifern schwieriger zu machen, sollte man die Softwareversion verstecken, also entweder nicht mehr mitsenden oder ändern.
„Softwareversion von lighttpd nicht mitsenden/ändern“ weiterlesenDirectoryListing unter lighttpd aktivieren
Auf einem Testserver ist es häufig einfacher, wenn das DirectoryListing, d. h. die Anzeige des Inhalts in einem Verzeichnis, aktiviert ist. Standardmäßig ist es das unter lighttpd jedoch nicht. Über eine einfache Änderung in der Konfiguration kann man diese Funktion jedoch aktivieren.
„DirectoryListing unter lighttpd aktivieren“ weiterlesenDoppelten Content vermeiden
Es dürfte bekannt sein, dass Suchmaschinen Webseiten schlechter bewerten, wenn diese doppelte Inhalte vorweisen. So versucht also jeder, möglichst individuellen Content zu erstellen und nicht ganze Absätze zu kopieren.
„Doppelten Content vermeiden“ weiterlesenGZIP-Komprimierung mit mod_deflate
Die GZIP-Komprimierung packt die Daten, die der Server an den User versendet, und komprimiert sie dadurch. Der Vorteil dabei ist, dass der Traffic extrem sinkt (Komprimierungen von 70 % sind keine Seltenheit) und somit die Seite schneller geladen wird, da alle Dateien schneller geladen werden konnten.
„GZIP-Komprimierung mit mod_deflate“ weiterlesen