Das muss unbedingt in deiner .htaccess stehen!

In diesem Artikel geht es um ein sehr technisches Thema, das ich dir aber natรผrlich einfach aufbereite: die tollen Mรถglichkeiten der .htaccess Datei. In dieser Datei kรถnnen Konfigurationsanweisungen fรผr deinen Webserver hinterlegt und auf ein gewisses Verzeichnis bezogene Regeln festgelegt werden.

Das heiรŸt also, die in der .htaccess festgelegten Regeln gelten immer fรผr das Verzeichnis, in der diese Datei liegt. Im Normalfall legt man die meisten Konfigurationen in der .htaccess Datei des Hauptverzeichnisses ab, da diese fรผr diesen gesamten Ordner samt Unterordner gilt, wodurch WordPress .htaccess Regeln fรผr den gesamten Blog รผbernimmt.

Ich werde dir in diesem Artikel einige coole Codeschnipsel zeigen, mit denen du deinen Blog ganz einfach schneller und sicherer machen kannst. Diese Codeschnipsel musst du in der .htaccess deines Hauptverzeichnisses einfรผgen.

In WordPress .htaccess Dateien richtig benutzen

Bevor es los geht, muss ich dir noch ein paar Kleinigkeiten zu dieser besonderen Datei erklรคren.

Die .htaccess ist eine sehr mรคchtige Datei mit der man sehr viel gutes aber auch schlechtes anstellen kann. Trรคgst du hier etwas falsches ein, kann das dazu fรผhren, dass deine Website nicht mehr erreichbar ist.

Darum mache am besten ein komplettes WordPress Backup, bevor du loslegst!

Schutz der .htaccess

Bevor wir also loslegen, solltest du zunรคchst einmal die Dateiberechtigungen fรผr die .htaccess festlegen. WordPress schlรคgt vor (und ich kann das nur bestรคtigen), die Berechtigung 644 zu hinterlegen.

Dafรผr loggst du dich mit deinem FTP Programm auf deinem Webserver ein, machst einen Rechtsklick auf die .htaccess Datei in deinem Hauptverzeichnis, und klickst im Anschluss auf โ€žDateiberechtigungenโ€œ oder รคhnliches. Nun gibst du als Berechtigung 644 ein, und sicherst damit die Datei vor Verรคnderungen von auรŸen ab.

Standardinhalte

WordPress benรถtigt von Haus aus nur eine einzige Regel in der .htaccess um zu funktionieren. Diese Regel ist dafรผr da, dass man die URLs in WordPress รคndern kann. Das braucht man beispielsweise, um sprechende URLs zu erstellen. Dieser Eintrag sollte also bereits in deiner .htaccess stehen, wenn nicht, fรผge ihn unbedingt ein:

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Bevor du ร„nderungen einfรผgst: Achtung!

Erstelle dir auf jeden Fall zunรคchst ein Backup der .htaccess. Das geht ganz einfach indem du per FTP die aktuelle Datei herunterlรคdst und auf deinem Computer speicherst. Sollte dann etwas schief gehen, kannst du einfach diese gespeicherte Datei wieder hochladen und die verรคnderte รผberschreiben. Schon lรคuft wieder alles rund.

Noch eine letzte Kleinigkeit bevor es endlich ans Werk geht:
Fรผge die Codeschnipsel entweder vor โ€ž#BEGIN WordPressโ€œ ein oder hinter โ€ž#END WordPressโ€œ. Ich habe die Codeschnipsel jeweils am Anfang mit einer Zeile kommentiert, damit du den รœberblick behalten kannst und weiรŸt, welcher Code welche Auswirkungen hat. Kommentare beginnen immer mit einem # und werden von Browsern nicht interpretiert sondern dienen lediglich der รœbersichtlichkeit.

Auch die .htaccess muss bei einem Seitenaufruf immer zunรคchst einmal von dem Browser geladen werden, achte also darauf, sie mรถglichst schlank zu halten und nur die Codes einzufรผgen, die du wirklich benรถtigst.

So, jetzt geht es aber los ๐Ÿ™‚

WP-admin nur fรผr ausgewรคhlte IPs zulassen

Mit diesem Schnipsel kannst du die Login Seite fรผr alle Nutzer, auรŸer die von dir eingegebenen sperren. Logischerweise kannst du damit sehr effektiv verhindern, dass sich jemand ungewolltes an der Login Seite zu schaffen macht.

Das Ganze funktioniert nur, wenn du und die anderen Benutzer eine statische IP Adresse besitzen. Bei einer dynamischen IP wird bei jedem neuen Einwรคhlen eine neue IP vergeben. Ist das bei dir oder deinen Benutzern der Fall, kannst du diesen Trick nicht anwenden.
Deine IP Adresse kannst du ganz einfach herausfinden, indem du auf ein Online-Tool wie beispielsweise www.meine-aktuelle-ip.de gehst.

In der .htaccess werden die IP Adressen der freizugebenden Nutzer eingetragen. Du musst also jeden hinzukommenden Nutzer nach seiner IP Adresse fragen, und diese mit in die .htaccess eintragen.

# Zugriff auf wp-admin nur fรผr vorgegebene IPs
order deny,allow
deny from all
allow from IPAdresse1
allow from IPAdresse2

WP-config.php fรผr alle sperren

Die wp-config.php Datei enthรคlt deine Datenbankdaten, Zugangsdaten zu WordPress und weitere, sehr sensible Daten. Damit niemand einfach in die Datei reinschauen und sich an den Daten zu schaffen machen kann, kannst du sie รผber die .htaccess sperren.

# Verbietet allen den Zugang zur wp-config
 <files wp-config.php>
 order allow,deny
 deny from all
 </files>

Verhindere, dass deine Bilder genutzt werden

Sogenanntes Image Hotlinking wird immer wieder missbraucht. Das bedeutet, dass jemand eines deiner Bilder auf seiner Website einbaut, aber รผber deinen Server abruft. Dadurch entsteht zusรคtzlicher Traffic, was die Geschwindigkeit deines Blogs beeintrรคchtigen kann. Zudem sind viele Hostingpakete auf eine gewisse Menge an Traffic pro Monat begrenzt, wodurch du durch dieses Image Hotlinking Probleme bekommen kannst.

Mit diesem Codeschnipsel in der .htaccess kannst du einstellen, dass bei dem Versuch ein Bild รผber deinen Server einzubinden, stattdessen ein von dir vorgegebenes Bild angezeigt wird.

Achtung: Dieser Code sorgt in manchen Fรคllen dafรผr, dass Bilder in RSS Readern nicht mehr angezeigt werden. Wenn du RSS nicht anbietest oder auf die Bilder verzichten kannst, ist das kein Problem. In den anderen Fรคllen fรผge den Code einfach hinzu, und รผberprรผfe, ob die Bilder nach wie vor angezeigt werden.

# Verhindert Image Hotlinking. Ersetze die letzte URL mit einem Bildlink.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?deinblog.de [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://deinbild.jpg [NC,R,L]

Browser Caching aktivieren

Jetzt gibt es zwischendurch einen kleinen Tipp zur Geschwindigkeitsoptimierung mit Hilfe der WordPress .htaccess Datei. Ich habe diesen und weitere Tipps bereits in dem Artikel โ€ž7 Tricks, wie du WordPress schneller machen kannstโ€œ vorgestellt.

Dieser etwas lรคngere Code aktiviert das sogenannte Browser Caching. Bei einem Seitenaufruf speichert ein Browser zunรคchst alle Dateien offline und zeigt sie dann an. Dadurch entsteht die Ladezeit einer Website. Durch das Browser Caching wird dem Browser erlaubt, bei dem nรคchsten Seitenaufruf einfach wieder diese bereits heruntergeladenen Dateien abzurufen, ohne sie erneut herunterzuladen.

Damit das funktioniert, wird den Browsern die maximal erlaubte Speicherdauer fรผr verschiedene Dateitypen vorgegeben. Dadurch werden nach der vorgegebenen Zeit die Dateien neu geladen, falls ร„nderungen erfolgt sind.

# Browser Caching aktivieren
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 2 days"

GZIP Komprimierung aktivieren

Wordpress .htaccess GZIP aktivieren
Die GZIP Komprimierung reduziert die Ladezeit

Noch ein zweiter Tipp fรผr die Geschwindigkeitsoptimierung deiner Website. Du kannst mit einem kurzen Codeschipsel die sogenannte GZIP Komprimierung aktivieren.

Mรถchtest du deine Website-Ladezeit optimieren, erfรคhrst du hier alles รผber die Optimierung der Ladezeit mit WP Rocket.

GZIP ist ein Webstandard um Dateien zu komprimieren. Das kannst du dir vorstellen wie ein .zip oder .rar Archiv auf deinem Computer.
Die Dateien werden so stark es geht verkleinert und dann erst durch den Browser wieder entpackt. Dadurch wird dein Blog sehr viel effizienter und schneller geladen.

Gehe nach der Aktivierung auf checkgzipcompression.com und gib die URL deines Blogs ein. Du wirst nun sehen, ob GZIP aktiviert ist und was dadurch eingespart wird.

# Aktiviert GZIP Komprimierung
 <IfModule mod_deflate.c>
 SetOutputFilter DEFLATE
 </IfModule>

Zugriffe auf .htaccess verhindern

Zusรคtzlich zu der Einstellung der Dateiberechtigungen solltest du die .htaccess mit der Hilfe der .htaccess fรผr Zugriffe von auรŸen sperren. Klingt komisch, funktioniert aber ๐Ÿ™‚

Wie schon gesagt, hat die .htaccess groรŸe Auswirkungen auf die Funktionsweise deines Blogs und kann einen Haufen Schaden anrichten. Aus diesem Grund sollte man alles dafรผr tun, sie so gut wie mรถglich zu schรผtzen.

#Zugriffe auf .htaccess verhindern
 <files ~ "^.*\.([Hh][Tt][Aa])">
 order allow,deny
 deny from all
 satisfy all
 </files>

Bestimmte Nutzer ausschlieรŸen

Spammer loswerden und Hacker ausschlieรŸen, klingt doch super oder?
Ist es auch und vor allem geht es mit der .htaccess ganz einfach.

Bei den Spamkommentaren wird dir in WordPress direkt die IP Adresse angezeigt. Fรผr Hackversuche ist es etwas komplizierter, aber trotzdem machbar an die IP Adresse zu kommen. Hierfรผr musst du entweder in die Logfiles deines Servers schauen oder mit einem Plugin wie iThemes Security arbeiten.

Die herausgefundenen IP Adressen kannst du dann alle in diesen Codeschnipsel in der .htaccess eintragen, wodurch sie keinen Zugriff mehr auf deinen Blog haben. Ersetze einfach die X mit der IP Adresse.

#Nutzer per IP ausschlieรŸen
 <Limit GET POST>
 order allow,deny
 deny from XXX.XXX.XX.X
 deny from XXX.XXX.XX.X
 allow from all
 </Limit>

301 Weiterleitungen

Wenn du deinen Blog auf eine andere Domain umziehst, komplette Artikel oder Seiten auf eine neue URL umstellst oder aus einem anderen Grund eine Weiterleitung erstellen musst, ist das in WordPress mit der .htaccess ganz einfach.

Eine 301 Weiterleitung (301 Redirect) sorgt dafรผr, dass Nutzer beim Anklicken eines Links, der auf eine alte Seite verweist, auf die neue Seite weitergeleitet wird. Das ist nicht nur fรผr deine Nutzer sondern auch fรผr Google รคuรŸerst wichtig, denn so verlierst du keine Kraft durch die Links auf deine Seite, die ohne die Weiterleitung ins Leere fรผhren wรผrden.

Hinter dem โ€žRedirect 301โ€œ trรคgst du zunรคchst die alte URL ein, machst dahinter ein Leerzeichen und setzt die neue URL dahinter.

#301 Weiterleitungen
Redirect 301 /alteseite.html http://neuewebsite.de/neueurl
Redirect 301 / http://neuewebsite.de/

Auslesen von Nutzernamen verhindern

Wusstest du, dass man deinen Nutzernamen ganz einfach herausfinden kann, indem man /?author=1 an deine Domain anhรคngt? Probiere es mal aus, WordPress leitet dich sofort auf die Autorenseite von Benutzer eins weiter. Dadurch kรถnnen Hacker deinen Nutzernamen fรผr den Login super einfach herausfinden.
Klar, damit kommen sie auch nicht weit, aber man sollte es Hackern so schwierig wie mรถglich machen.

Wenn du diesen Code in deiner .htaccess hast, wird bei der Eingabe von /?author=X die Startseite deines Blogs angezeigt.

# Verhindert das einfache Auslesen von Nutzernamen
 RewriteEngine On
 RewriteBase /
 RewriteCond %{QUERY_STRING} .*author=(.+.?) [NC]
 RewriteRule (.*) /blog/?author= [NC,L,R=301]

Hast du andere .htaccess Codes, mit denen du deinen Blog verbesserst? Kommentiere doch einfach und lass uns teilhaben ๐Ÿ™‚


Jonas Tietgen

Dein WordPress Ninja mit 10+ Jahren Erfahrung, Grรผnder von WP Ninjas und SEO Nerd.

Jonas hilft Solopreneuren, ihre WordPress Websites selber รผberarbeiten, pflegen und optimieren zu kรถnnen.

Schon seit er 14 ist, baut er Websites mit WordPress und arbeitet seit Jahren tรคglich mit WordPress. Dadurch hat er Erfahrung mit so ziemlich jedem Theme und Plugin, kennt WordPress auswendig und toppt das Ganze mit einer Liebe zu Webdesign (inklusive Webdesign-Studium) und SEO.

In รผber 120 Tutorials stellt er dir in seinem Blog sein gesamtes Wissen zur Verfรผgung, erweitert dein SEO-Wissen in seinem Search Effect Podcast, sowie dem Keyword-Magic-Workshop und unterstรผtzt dich in Coachings und รผber seinen beliebten Mitgliederbereich.

Abseits von WordPress nerdet Jonas gerne รผber Gesundheit ab, macht viel Krafttraining und weiteren Sport und baut immer wieder spannende Website-Projekte wie bambuslife.de oder wattlife.de auf.


46 Plugins & Tools, dank denen ich 20.000 Besucher monatlich bekomme!

Das WordPress Toolkit kostenlos für dich

Abonniere meine exklusiven WordPress Tipps, News und mein Experten-Wissen, das ich sonst nirgends teile!

 

...und sichere dir das WordPress Toolkit kostenlos!

Nach der Begrüßungsmail kommen die E-Mails im Normalfall 1x / Woche. Du kannst dich natürlich jederzeit abmelden und bekommst keinen Spam! Datenschutz

46 Plugins & Tools, dank denen ich 20.000 Besucher monatlich bekomme!

Das WordPress Toolkit kostenlos für dich

Abonniere meine exklusiven WordPress Tipps, News und mein Experten-Wissen, das ich sonst nirgends teile!

 

...und sichere dir das WordPress Toolkit kostenlos!

Nach der Begrüßungsmail kommen die E-Mails im Normalfall 1x / Woche. Du kannst dich natürlich jederzeit abmelden und bekommst keinen Spam! Datenschutz