⏱Guide: Jetzt WordPress schneller machen + Tutorial: Ladezeit Optimieren WordPress für Pagespeed unter 3 Sekunden – lies weiter

4.5
(2)

⏳: 15 min

WordPress schneller machen für eine Website Ladezeit unter 3 Sekunden. Reduziere mit unserem Guide zur Ladezeit Optimierung, die Absprungsrate deiner Website. Schritt für Schritt zur Pagespeed Optimierten Website. Finde lästige WebBremsen, Starte mit uns in das nächste Level der WordPress Performance Optmierung. Viel Spass, weiterlesen.

Das bringt Ladezeit Optimierung bei WordPress – Grundlagen zur WP Performance Optimierung

Zusammenfassung WordPress schneller machen, Darum geht’s: Es gibt viele Faktoren für eine schnelle WordPress Ladezeit. Speed Tools geben dir einen Score um deine Geschwindigkeit zu Messen. Ein User gibt dir keinen Score, sondern Springt ab, oder bleibt. Mehr gibt es nicht. Wir gehen in diesem Beitrag alle wichtigen Faktoren zur PageSpeed Optimierung Schritt für Schritt durch, um eine Ladezeit unter 3sec. zu erreichen. WordPress schneller machen, Bereit? Los gehts.

Zahlen, Daten, Fakten. In der PageSpeed Optimierung geht es um mehr als, “nur” WordPress schneller zu machen. Aus der Site Geschwindigkeit resultieren auch Zahlen wie Absprungrate oder der Back to Search. Das sind die Zahlen, welche Umsatz bringen. Diese zu Reduzieren liegt also vor allem in deinem Interesse. Viel Spass beim weiterlesen.

Google zeigt in seiner Studie, wie die Bounce-Rate durch Page-Speed gesenkt werden kann. 

  • 3 Sekunden Ladezeit anstieg Bounce-Rate um 32 %
  • 5 Sekunden, 90 %
  • 6 Sekunden, 106 %
  • 10 Sekunden, 123 %

Kaum jemand wartet auf deine Website, deswegen WordPress schneller machen. Ohne Pagespeed geht auch Umsatz Verloren. Aber, wichtig ist nicht die komplette Ladezeit, sondern was der User sieht während deine Website lädt. Beispiel: Deine Website hat eine Gesamt-Ladezeit von 5sec. den ersten Content sieht der User aber schon nach 0.5sec, Rest lädt im Hintergrund. Damit senkst du die Bounce-Rate ebenfalls.

Pagespeed als Ranking Faktor, das Bewertet Google!

Viele Sehen den Pagespeed als Ranking Faktor, das ist Falsch. Google Bewertet was aus der Performance resultiert, nämlich User Signale, wie zum Beispiel die Bounce Rate, Back to Search. Hast du eine langsame Ladezeit aber kaum jemand springt ab, wird trotzdem ein Positives User-Signal gesendet, was dein Ranking trotz geringer Ladezeit verbessern kann. Wichtig ist, was während dem Laden passiert. Jetzt gehts zum Tutorial WordPress schneller machen.

style="display:block" data-ad-client="ca-pub-2733976072598253" data-ad-slot="4541255017" data-ad-format="auto" data-full-width-responsive="true">

WordPress schneller machen Tutorial – Schritt für Schritt zur Pagespeed Optimierten WP Website 

WordPress schneller machen, aber wo holt man das meiste an Site-Speed Performance heraus? Es gibt 5 Hauptpunkte welche unsere Ladegeschwindigkeit beeinflussen. 

  • Hosting
  • Themes
  • Plugins
  • Manuelle Optimierungsmöglichkeiten
  • Dateien komprimieren
  • Checkliste
  1. Hosting

Der Server ist dein Fundament für einen soliden Pagespeed. Die meisten Anbieter locken mit günstigen Angeboten, sobald der Server aber Traffic bekommt, Stress aushalten muss, ist es vorbei. Das Hosting sollte gut überlegt sein, gerade hier kann man sich mit dem richtigen Anbieter, sogar Kosten für Plugins Sparen. WordPress schneller machen, wenn der Server genug Power hat, auch ohne Plugins. Unsere Top Hoster Auswahl findest du im WordPress Website erstellen Tutorial Analysiere als erstes den TTFB – Time to First Byte deiner Website. ist dieser unter 0,5sec, ist dies ein solider Wert zum weiteren Ausbau deines Pagespeed’s. Weitere Speed-Parameter zur manuellen Optimierung, findest du weiter unten. 

2. Themes

Themes sollten in Sachen WordPress schneller machen besondere Aufmerksamkeit bekommen. Bremst dich dein Theme aus, weil der Code unsauber geschrieben, viel zu viel Speicher benötigt wird. Bringt alle Optimierung nichts. Ist es dann nicht kompatibel mit anderen Plugins, geht man erneut auf die Suche nach Theme Alternativen. Im Test verwenden wir Divi, eines der Codelastigsten Themes. Elementor, Oxygen sind ebenfalls gute Anbieter in Sachen WordPress Ladezeit Optimierung. Mehr zu Pagebuilder im WordPress Website erstellen Tutorial. Mit den richtigen Optimierungen, wird aus Divi, eines der schnellsten Themes. 

3. Plugins

WordPress schneller machen mit Kostenlosen, kostenpflichtigen Plugins. Bekomme alle Informationen um den richtigen Plugin-Mix zu finden, damit sich deine Besucher wohl Fühlen, ohne ständig auf die nächste Seite zu Warten. Achte aber immer darauf, dass du so wennig Plugins wie möglich verwendest. Achtung, viele Plugins von unterschiedlichen Programmierern kann gefährlich sein. Dabei geht es nicht nur um WordPress Ladezeit Optimierung. Auch Sicherheit deiner WordPress Installation ist gefärdet. Weiteres Argument gegen ein Plugin-Mix, ist dass diese auch laufend aktualisiert werden. Ein Programmierer hat weniger Motivation ein kostenloses Plugin laufend zu aktualisieren, als eins wofür er Geld bekommt. Aber mehr dazu weiter unten. 

4. Manuelle WP- Website Optimierungen

Manuell kann einiges an Speed herausgeholt werden. Mit dem richtigen Hoster, bekommt man fast alles bereitgestellt, womit man WordPress schneller machen kann. Manche Optimierungen können nur direkt am Server angepasst werden. Um so mehr dein Hoster dir hier zur Verfügung stellt, umso mehr kannst du Optimieren. Meist schalten die Hoster bestimmte Funktionen nicht frei, aufgrund von Sicherheit. Mehr zu WordPress schneller machen durch manuelle Optimierung, lies weiter.

5. Dateien komprimieren

Komprimiere Dateien bei Seiten die in Google Indexiert werden sollen. Wird der Pagespeed durch die Datei-Grösse nicht beeinflusst, und die Seite nicht Ranken soll, so spielt die Grösse keine Rolle. Soll die Seite allerdings Indexiert werden, muss Platz gespart werden. Lies weiter, weiter unten zeige ich dir Tools, Regeln, mit denen du nachhaltig Platz Sparen kannst.  WordPress schneller machen Tutorial, Jetzt kommen wir zu den Faktoren, welche deinen WordPress Pagespeed am meisten Pushen, und den grössten Effekt auf deine Ladezeit haben.

Schritt 1 Caching

Was ist Caching?

Cache ([kæʃ], [kaʃ][1]) bezeichnet in der Informationstechnik einen schnellen Pufferspeicher, der (wiederholte) Zugriffe auf ein langsames Hintergrundmedium oder aufwendige Neuberechnungen zu vermeiden hilft. Daten, die bereits einmal geladen oder generiert wurden, verbleiben im Cache, so dass sie bei späterem Bedarf schneller aus diesem abgerufen werden können. Auch können Daten, die vermutlich bald benötigt werden, vorab vom Hintergrundmedium abgerufen und vorerst im Cache bereitgestellt werden (read-ahead). Quelle: https://de.wikipedia.org/wiki/Cache

Plugins, welche dir einen Cache liefern gibt es Massenhaft, nur Erweiterungen, welche WordPress schneller machen, gibt es wenige. Manchmal kann es passieren dass Cache-Plugins deine Website sogar langsamer machen als ohne Cache. Beachte: gib nicht dem Cache die Schuld, sondern Teste auch andere Plugins. Unsere Tipps, siehst du in der Plugin-Zusammenfassung.

Browser Caching aktivieren

WordPress schneller machen mit Browser Caching. Um Browser Caching selber zu aktivieren, kopiere den Code in die .htaccess deiner WordPress Installation.

# BEGIN Browser Cache aktivieren
<IfModule mod_expires.c>
ExpiresActive On

ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"

ExpiresDefault "access plus 1 week"

</IfModule>
# END Browser Cache
style="display:block" data-ad-client="ca-pub-2733976072598253" data-ad-slot="4541255017" data-ad-format="auto" data-full-width-responsive="true">
Browser Caching vom Plugin aktivieren lassen >Zur Pagespeed Plugin-Übersicht.

Browser Caching Testen bei GT Metrix.

Schritt 2 CSS und Javascript zusammenführen und Verkleinern

Beim zusammenführen und Verkleinern von Javascript und CSS wird der meiste Pagespeed Gewonnen. Hier wird nicht nur der Speicherplatz im Cache verringert, sondern auch die Anfragen an den Server werden extrem Verringert. Es gibt verschiedene Möglichkeiten zum zusammenführen und Verkleinern von CSS und Java Script. Viele Plugins geistern herum, aber welche sind wirklich sinnvoll, ohne deine Website zu zerschiessen?

CSS & Javascript vom Plugin zusammenführen und Verkleinern lassen >Zur Pagespeed Plugin-Übersicht.

CSS & Javascript komprimierung Testen bei GT Metrix.

Schritt 3 Bilder Verkleinern

Bilder sind das wichtigste einer Website. Wähle das richtige Format, komrimiere es mit den Tools.

Formatregeln:

  • PNG verwenden bei Bildern wie zum Beispiel Infografiken.
  • JPG verwenden bei Bildern mit hoher Auflösung, Beispiel Landschaftsbild, Portraits.

WebTools zum komprimieren der Bildgrössen:

WordPress Plugins zum komprimieren deiner Bilder

Schritt 4 WordPress schneller machen mit Gzip

Nächster Schritt, WordPress Schneller machen mit Gzip. Gzip komrimiert deine Website vor der Übertragung zum Browser. Sogut wie jedes Caching-Plugin aktiviert Gzip. Du brauchst hier also nicht selbst Hand anlegen, sondern kannst die direkt im Plugin aktivieren. Willst du dennoch selber Code einfügen? Hier ist der Code um Gzip zu aktivieren:

# BEGIN Gzip aktivieren
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
#END Gzip aktivieren
Kopiere den Code einfach in die .htaccess deiner WP-Installation.
Gzip via Plugin aktivieren >Zur Pagespeed Plugin-Übersicht.
style="display:block" data-ad-client="ca-pub-2733976072598253" data-ad-slot="4541255017" data-ad-format="auto" data-full-width-responsive="true">

Schritt 5 PHP Konfiguration Optimieren

WordPress schneller machen mit PHP Konfiguration. Gehe in das Backoffice deines Hostings. Suche die PHP konfiguration. Jeder Provider gestaltet den Aufbau etwas anders um an das Ziel wie in unserem Fall, PHP konfiguration, zu gelangen. Jeden Hoster können wir hier leider nicht aufführen, Nimm kurz Google zur Hand und Suche „PHP Konfiguration + Name vom Hoster“. Hast du deine PHP Konfiguration gefunden, kann es mit der Performance Optimierung losgehen. Wähle die einzelnen Parameter aus, nun in PHP konfiguration einfügen. Wichtig, Füge auch dei Buchstaben hinter den Zahlen mit hinzu.

  • max_execution_time = 500
  • max_input_time = 2800
  • memory_limit = 512M 
  • post_max_size = 128M 
  • upload_max_filesize = 128M

Manche Parameter lassen sich zwar auch über functions.php eingeben, aber nicht alle. Wir gehen hier auf nummer sicher, und geben dies direkt in der PHP Konfiguration ein. Fragen? Schreibe in den Kommentaren. Nächster Schritt, DNS Prefetch einsetzenLies weiter.

Schritt 6 DNS Prefetch einsetzen

Im DNS Prefetch werden externe Daten vorher abgerufen, um so eine schnellere Ladezeit zu bekommen. Externe Daten sind zum Beispiel Analytics, Werbung, Schriftarten. 

WordPress schneller machen mit DNS Prefatch durch Plugins. Im Moment sind Borlabs, WP-Rocket die einzigen Plugins, welche DNS Prefetch Automatisch für dich umsetzen.

Ryte zeigt in seinen Beitrag Schnelle Ladezeiten Dank Prefetching ebenfalls die enormen Vorteile. Weiterlesen.

<link rel="dns-prefetch" href="https://beispiel-domain.com/" >
Mit den Entwicklertools deines Browsers kannst du unter „Quellen“ herausfinden welche Daten Extern Geladen werden. Füge den Code vor dem Abschliessenden head Bereich in der functions.php deine Child Themes. Lies weiter.
<html>
  <head>
    <link rel="dns-prefetch" href="https://beispiel-domain.com/">
    <!-- all other head elements -->
  </head>
  <body>
    <!-- page content -->
  </body>
</html>
DNS Prefetch vom Plugin erledigen lassen >Zur Pagespeed Plugin-Übersicht.
style="display:block" data-ad-client="ca-pub-2733976072598253" data-ad-slot="4541255017" data-ad-format="auto" data-full-width-responsive="true">

Schritt 7 CDN oder Lazy Load aktivieren

  • Vorteile: schnellere Ladezeiten
  • Nachteile: muss vom Nutzer akzeptiert werden

WordPress schneller machen mit CDN macht meiner Meinung nur Sinn, wenn die Website International aufgerufen wird. Für Websiten die zum Beispiel nur National aufgerufen werden, muss darauf geachtet werden, dass sich der Server im selben Land befindet. Ist deine Zielgruppe aber International, ist CDN eine Sinnvolle aber Meinung nach, keine notwendige Option. Lazy Load macht in jedem Fall mehr Sinn als CDN.

WordPress schneller machen mit Lazy Load anstatt CDN?

Lazy Load lädt die Bilder erst, wenn diese in Sichtweite vom User sind. Das Spart extrem viel Ladezeit gerade bei grossen Websites und Shops. Schau immer af die Option, CSS Klassen von Lazy Load auszuschliessen, somit können Hintergrundbilder direkt Geladen werden und werden nicht, nachgeladen. Zudem muss bei Verwendung eines CDN, zuerst die Zustimmung des Users erfolgen. Gibt er diese nicht, wird der eingebundene Content nicht angezeigt. Lazy Load benötigt die Zustimmung jedoch nicht, weil die Bilder direkt vom eigenen Server Geladen werden. 

Schritt 8 von HTTP/1 auf HTTP/2 wechseln

HTTP bedeutet Hyper Text Transfer Protocol. Benötigt wird es um Dateien vom Webserver zum Browser zu Übertragen. WordPress schneller machen mit HTTP/2 ist die Weiterentwicklung mit einer höheren Performance. HTTP/1 stellt jede Datei einzeln zur Verfügung, worduch die Server-Anfragen um ein vielfaches erhöht werden. Mit HTTP/2 wird nur eine einzige Verbindung benötig um alle Dateien an den Browser zu Übertragen.

Wie stellt man auf HTTP/2 um? Jeder Hoster hat ein anderes Verfahren um HTTP/2 zu aktivieren. In den meisten Fällen ist es schon aktiviert. Wenn du nicht weisst, ob dein HTTP/2 schon aktiv ist, schau in die GT Metrix Analyse, wo zu erkennen ist, ob HTTP/2 schon aktiv ist. Ist es nicht aktiv, Kontaktiere deinen Hosting-Anbieter. Jetzt kommt WordPress schneller machen mit Optimierter .htaccess.

Schritt 9 htacces Optimieren

Auch mit der htacces kannst du deinen Pagespeed Pushen. Gute Plugins nehmen dir diese Arbeit komplett ab. Möchtest du dennoch selbst Hand anlegen, hier die Möglichkeiten: Kopiere die perfekte .htaccess von der SEO Agentur Hamburg, füge diese in deine WordPress Installation ein, Speicher die alte vorher ab, in dem du zum Beispiel den Namen .htaccess1 vergibst. Borlabs Cache schreibt zum Beispiel Code in die .htaccess. 

Wordpress schneller machen mit Optimierter .htaccess. Inhalt der Optimierten .htaccess Datei von der SEO Agentur Hamburg:

  • Garantierte HTTP zu HTTPS Umleitung
  • CORS für bestimmte Dateitypen aktivieren
  • lästige Anfragen Blockieren (Block Nuisance Requests)
  • Dateien komprimieren und Cachen
  • 7G-Firewall gegen Einschleusung von Schadcode
  • 7G Addon gegen aggressives Scannen von Upload-Dateien
  • WordPress Dateien gegen Zugriff Blockieren
  • Hotlink Protection gegen Bildklau
  • Schutz gegen „ReallyLongRequest“ Banditen
  • Adminbereich Schützen mittels HTTP-Verriegelung
  • XML-RPC Datei Sperren
  • Referrer Header
  • HTTP Security Header
  • WordPress Standard Regeln
########################################################################
# OPTIMAL .htaccess FILE FOR SPEED AND SECURITY @Version 2.0.1 - 08/2020
# ----------------------------------------------------------------------
# @Author: Andreas Hecht
# @Author URI: https://seoagentur-hamburg.com
# License: GNU General Public License v2 or later
# License URI: http://www.gnu.org/licenses/gpl-2.0.html
########################################################################


# ----------------------------------------------------------------------
# Rewrite from HTTP to HTTPS - if you want to use it, comment it out
# ----------------------------------------------------------------------

#<IfModule mod_rewrite.c>
#RewriteEngine On
#RewriteCond %{HTTPS} !=on
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
#</IfModule>

# ----------------------------------------------------------------------
# | Activate CORS                                                  
# ----------------------------------------------------------------------

<IfModule mod_headers.c>
    <FilesMatch ".(ttf|ttc|otf|eot|woff|woff2|font.css|css|js|gif|png|jpe?g|svg|svgz|ico|webp)$">
        Header set Access-Control-Allow-Origin "*"
    </FilesMatch>
</IfModule>

# -----------------------------------------------------------------------
# | 404 Fix: Block Nuisance Requests for Non-Existent Files - New in 2018  
#   https://perishablepress.com/block-nuisance-requests - @Update 2019
# -----------------------------------------------------------------------

<IfModule mod_alias.c>
	RedirectMatch 403 (?i).php.suspected
	RedirectMatch 403 (?i)apple-app-site-association
	RedirectMatch 403 (?i)/autodiscover/autodiscover.xml
</IfModule>

# ----------------------------------------------------------------------
# | Compressing and Caching - Version 2020                                                    |
# ----------------------------------------------------------------------

# Serve resources with far-future expires headers.
#
# (!) If you don't control versioning with filename-based
# cache busting, you should consider lowering the cache times
# to something like one week.
#
# https://httpd.apache.org/docs/current/mod/mod_expires.html

<IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault                                      "access plus 1 month"

  # CSS
    ExpiresByType text/css                              "access plus 1 year"

  # Data interchange
    ExpiresByType application/atom+xml                  "access plus 1 hour"
    ExpiresByType application/rdf+xml                   "access plus 1 hour"
    ExpiresByType application/rss+xml                   "access plus 1 hour"

    ExpiresByType application/json                      "access plus 0 seconds"
    ExpiresByType application/ld+json                   "access plus 0 seconds"
    ExpiresByType application/schema+json               "access plus 0 seconds"
    ExpiresByType application/vnd.geo+json              "access plus 0 seconds"
    ExpiresByType application/xml                       "access plus 0 seconds"
    ExpiresByType text/xml                              "access plus 0 seconds"

  # Favicon (cannot be renamed!) and cursor images
    ExpiresByType image/vnd.microsoft.icon              "access plus 1 week"
    ExpiresByType image/x-icon                          "access plus 1 week"

  # HTML - No Caching
    ExpiresByType text/html                             "access plus 0 seconds"

  # JavaScript
    ExpiresByType application/javascript                "access plus 1 year"
    ExpiresByType application/x-javascript              "access plus 1 year"
    ExpiresByType text/javascript                       "access plus 1 year"

  # Manifest files
    ExpiresByType application/manifest+json             "access plus 1 week"
    ExpiresByType application/x-web-app-manifest+json   "access plus 0 seconds"
    ExpiresByType text/cache-manifest                   "access plus 0 seconds"
    
# Update 2020: Google recommendation: cache duration increased to 1 year
# @see: https://web.dev/uses-long-cache-ttl/    

  # Media files
    ExpiresByType audio/ogg                             "access plus 1 year"
    ExpiresByType image/bmp                             "access plus 1 year"
    ExpiresByType image/gif                             "access plus 1 year"
    ExpiresByType image/jpeg                            "access plus 1 year"
    ExpiresByType image/png                             "access plus 1 year"
    ExpiresByType image/svg+xml                         "access plus 1 year"
    ExpiresByType image/webp                            "access plus 1 year"
    ExpiresByType video/mp4                             "access plus 1 year"
    ExpiresByType video/ogg                             "access plus 1 year"
    ExpiresByType video/webm                            "access plus 1 year"

  # Web fonts

    # Embedded OpenType (EOT)
    ExpiresByType application/vnd.ms-fontobject         "access plus 1 year"
    ExpiresByType font/eot                              "access plus 1 year"

    # OpenType
    ExpiresByType font/opentype                         "access plus 1 year"

    # TrueType
    ExpiresByType application/x-font-ttf                "access plus 1 year"

    # Web Open Font Format (WOFF) 1.0
    ExpiresByType application/font-woff                 "access plus 1 year"
    ExpiresByType application/x-font-woff               "access plus 1 year"
    ExpiresByType font/woff                             "access plus 1 year"

    # Web Open Font Format (WOFF) 2.0
    ExpiresByType application/font-woff2                "access plus 1 year"

  # Other
    ExpiresByType text/x-cross-domain-policy            "access plus 1 week"
</IfModule>

<IfModule mod_deflate.c>
# Insert filters / compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/vtt 
AddOutputFilterByType DEFLATE text/x-component
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/js
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE application/atom+xml 
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/ld+json 
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject 
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/font-woff2
AddOutputFilterByType DEFLATE application/x-font-woff
AddOutputFilterByType DEFLATE application/x-web-app-manifest+json font/woff
AddOutputFilterByType DEFLATE font/woff 
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon 

# Exception: Images
SetEnvIfNoCase REQUEST_URI .(?:gif|jpg|jpeg|png|svg)$ no-gzip dont-vary

# Drop problematic browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSI[E] !no-gzip !gzip-only-text/html

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>

#Alternative caching using Apache's "mod_headers", if it's installed.
#Caching of common files - ENABLED
<IfModule mod_headers.c>
<FilesMatch ".(ico|pdf|flv|swf|js|css|gif|png|jpg|jpeg|txt|woff2|woff)$">
Header set Cache-Control "max-age=31536000, public"
</FilesMatch>
</IfModule>

<IfModule mod_headers.c>
  <FilesMatch ".(js|css|xml|gz)$">
    Header append Vary Accept-Encoding
  </FilesMatch>
</IfModule>

# Set Keep Alive Header
<IfModule mod_headers.c>
    Header set Connection keep-alive
</IfModule>

# If your server don't support ETags deactivate with "None" (and remove header)
<IfModule mod_expires.c> 
  <IfModule mod_headers.c> 
    Header unset ETag 
  </IfModule> 
  FileETag None 
</IfModule>

<IfModule mod_headers.c>
<FilesMatch ".(js|css|xml|gz|html|woff|woff2|ttf)$">
Header append Vary: Accept-Encoding
</FilesMatch>
</IfModule>

# ----------------------------------------------------------------------
# | 7G Firewall for Security - Do not change this part @Update 2020
# ----------------------------------------------------------------------
# 7G FIREWALL v1.2 20190727 - Live-Version 02/2020
# @ https://perishablepress.com/7g-firewall/

# 7G:[CORE]
ServerSignature Off
Options -Indexes
RewriteEngine On
RewriteBase /

# 7G:[QUERY STRING]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{QUERY_STRING} ([a-z0-9]{2000,}) [NC,OR]
	RewriteCond %{QUERY_STRING} (/|%2f)(:|%3a)(/|%2f) [NC,OR]
	RewriteCond %{QUERY_STRING} (/|%2f)(*|%2a)(*|%2a)(/|%2f) [NC,OR]
	RewriteCond %{QUERY_STRING} (~|`|<|>|^|||0x00|%00|%0d%0a) [NC,OR]
	RewriteCond %{QUERY_STRING} (cmd|command)(=|%3d)(chdir|mkdir)(.*)(x20) [NC,OR]
	RewriteCond %{QUERY_STRING} (fck|ckfinder|fullclick|ckfinder|fckeditor) [NC,OR]
	RewriteCond %{QUERY_STRING} (/|%2f)((wp-)?config)((.|%2e)inc)?((.|%2e)php) [NC,OR]
	RewriteCond %{QUERY_STRING} (thumbs?(_editor|open)?|tim(thumbs?)?)((.|%2e)php) [NC,OR]
	RewriteCond %{QUERY_STRING} (absolute_|base|root_)(dir|path)(=|%3d)(ftp|https?) [NC,OR]
	RewriteCond %{QUERY_STRING} (localhost|loopback|127(.|%2e)0(.|%2e)0(.|%2e)1) [NC,OR]
	RewriteCond %{QUERY_STRING} (.|20)(get|the)(_|%5f)(permalink|posts_page_url)((|%28) [NC,OR]
	RewriteCond %{QUERY_STRING} (s)?(ftp|http|inurl|php)(s)?(:(/|%2f|%u2215)(/|%2f|%u2215)) [NC,OR]
	RewriteCond %{QUERY_STRING} (globals|mosconfig([a-z_]{1,22})|request)(=|[|%[a-z0-9]{0,2}) [NC,OR]
	RewriteCond %{QUERY_STRING} ((boot|win)((.|%2e)ini)|etc(/|%2f)passwd|self(/|%2f)environ) [NC,OR]
	RewriteCond %{QUERY_STRING} (((/|%2f){3,3})|((.|%2e){3,3})|((.|%2e){2,2})(/|%2f|%u2215)) [NC,OR]
	RewriteCond %{QUERY_STRING} (benchmark|char|exec|fopen|function|html)(.*)((|%28)(.*)()|%29) [NC,OR]
	RewriteCond %{QUERY_STRING} (php)([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}) [NC,OR]
	RewriteCond %{QUERY_STRING} (e|%65|%45)(v|%76|%56)(a|%61|%31)(l|%6c|%4c)(.*)((|%28)(.*)()|%29) [NC,OR]
	RewriteCond %{QUERY_STRING} (/|%2f)(=|%3d|$&|_mm|cgi(.|-)|inurl(:|%3a)(/|%2f)|(mod|path)(=|%3d)(.|%2e)) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3c)(.*)(e|%65|%45)(m|%6d|%4d)(b|%62|%42)(e|%65|%45)(d|%64|%44)(.*)(>|%3e) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3c)(.*)(i|%69|%49)(f|%66|%46)(r|%72|%52)(a|%61|%41)(m|%6d|%4d)(e|%65|%45)(.*)(>|%3e) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3c)(.*)(o|%4f|%6f)(b|%62|%42)(j|%4a|%6a)(e|%65|%45)(c|%63|%43)(t|%74|%54)(.*)(>|%3e) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3c)(.*)(s|%73|%53)(c|%63|%43)(r|%72|%52)(i|%69|%49)(p|%70|%50)(t|%74|%54)(.*)(>|%3e) [NC,OR]
	RewriteCond %{QUERY_STRING} (+|%2b|%20)(d|%64|%44)(e|%65|%45)(l|%6c|%4c)(e|%65|%45)(t|%74|%54)(e|%65|%45)(+|%2b|%20) [NC,OR]
	RewriteCond %{QUERY_STRING} (+|%2b|%20)(i|%69|%49)(n|%6e|%4e)(s|%73|%53)(e|%65|%45)(r|%72|%52)(t|%74|%54)(+|%2b|%20) [NC,OR]
	RewriteCond %{QUERY_STRING} (+|%2b|%20)(s|%73|%53)(e|%65|%45)(l|%6c|%4c)(e|%65|%45)(c|%63|%43)(t|%74|%54)(+|%2b|%20) [NC,OR]
	RewriteCond %{QUERY_STRING} (+|%2b|%20)(u|%75|%55)(p|%70|%50)(d|%64|%44)(a|%61|%41)(t|%74|%54)(e|%65|%45)(+|%2b|%20) [NC,OR]
	RewriteCond %{QUERY_STRING} (x00|("|"|'|%27)?0("|"|'|%27)?(=|%3d)("|"|'|%27)?0|cast((|%28)0x|or%201(=|%3d)1) [NC,OR]
	RewriteCond %{QUERY_STRING} (g|%67|%47)(l|%6c|%4c)(o|%6f|%4f)(b|%62|%42)(a|%61|%41)(l|%6c|%4c)(s|%73|%53)(=|[|%[0-9A-Z]{0,2}) [NC,OR]
	RewriteCond %{QUERY_STRING} (_|%5f)(r|%72|%52)(e|%65|%45)(q|%71|%51)(u|%75|%55)(e|%65|%45)(s|%73|%53)(t|%74|%54)(=|[|%[0-9A-Z]{0,2}) [NC,OR]
	RewriteCond %{QUERY_STRING} (j|%6a|%4a)(a|%61|%41)(v|%76|%56)(a|%61|%31)(s|%73|%53)(c|%63|%43)(r|%72|%52)(i|%69|%49)(p|%70|%50)(t|%74|%54)(:|%3a)(.*)(;|%3b|)|%29) [NC,OR]
	RewriteCond %{QUERY_STRING} (b|%62|%42)(a|%61|%41)(s|%73|%53)(e|%65|%45)(6|%36)(4|%34)(_|%5f)(e|%65|%45|d|%64|%44)(e|%65|%45|n|%6e|%4e)(c|%63|%43)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(.*)(()(.*)()) [NC,OR]
	RewriteCond %{QUERY_STRING} (allow_url_(fopen|include)|auto_prepend_file|blexbot|browsersploit|(c99|php)shell|curltest|disable_functions?|document_root|elastix|encodeuricom|exec|exploit|fclose|fgets|fputs|fsbuff|fsockopen|gethostbyname|grablogin|hmei7|input_file|load_file|null|open_basedir|outfile|passthru|popen|proc_open|quickbrute|remoteview|root_path|safe_mode|shell_exec|site((.){0,2})copier|sux0r|trojan|wget|xertive) [NC,OR]
	RewriteCond %{QUERY_STRING} (;|<|>|'|"|)|%0a|%0d|"|%27|%3c|%3e|%00)(.*)(/*|alter|base64|benchmark|cast|char|concat|convert|create|encode|declare|delete|drop|insert|md5|order|request|script|select|set|union|update) [NC,OR]
	RewriteCond %{QUERY_STRING} ((+|%2b)(concat|delete|get|select|union)(+|%2b)) [NC,OR]
	RewriteCond %{QUERY_STRING} (union)(.*)(select)(.*)((|%28) [NC,OR]
	RewriteCond %{QUERY_STRING} (concat)(.*)((|%28) [NC]	
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_QUERY_STRING:%1___%2___%3]	
</IfModule>

# 7G:[REQUEST URI]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{REQUEST_URI} ([a-z0-9]{2000,}) [NC,OR]
	RewriteCond %{REQUEST_URI} (=?('|%27)/?)(.) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(*|"|'|.|,|&|&?)/?$ [NC,OR]
	RewriteCond %{REQUEST_URI} (.)(php)(()?([0-9]+)())?(/)?$ [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(vbulletin|boards|vbforum)(/)? [NC,OR]
	RewriteCond %{REQUEST_URI} (^|~|`|<|>|,|%||{|}|[|]||) [NC,OR]
	RewriteCond %{REQUEST_URI} (.(s?ftp-?)config|(s?ftp-?)config.) [NC,OR]
	RewriteCond %{REQUEST_URI} ({0}|"?0"?="?0|(/(|...|+++|") [NC,OR]
	RewriteCond %{REQUEST_URI} (thumbs?(_editor|open)?|tim(thumbs?)?)(.php) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(fck|ckfinder|fullclick|ckfinder|fckeditor) [NC,OR]
	RewriteCond %{REQUEST_URI} (.|20)(get|the)(_)(permalink|posts_page_url)(() [NC,OR]
	RewriteCond %{REQUEST_URI} (///|??|/&&|/*(.*)*/|/:/||0x00|%00|%0d%0a) [NC,OR]
	RewriteCond %{REQUEST_URI} (/%7e)(root|ftp|bin|nobody|named|guest|logs|sshd)(/) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(etc|var)(/)(hidden|secret|shadow|ninja|passwd|tmp)(/)?$ [NC,OR]
	RewriteCond %{REQUEST_URI} (s)?(ftp|http|inurl|php)(s)?(:(/|%2f|%u2215)(/|%2f|%u2215)) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(=|$&?|&?(pws|rk)=0|_mm|_vti_|cgi(.|-)?|(=|/|;|,)nt.) [NC,OR]
	RewriteCond %{REQUEST_URI} (.)(conf(ig)?|ds_store|htaccess|htpasswd|init?|mysql-select-db)(/)?$ [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(bin)(/)(cc|chmod|chsh|cpp|echo|id|kill|mail|nasm|perl|ping|ps|python|tclsh)(/)?$ [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(::[0-9999]|%3a%3a[0-9999]|127.0.0.1|localhost|loopback|makefile|pingserver|wwwroot)(/)? [NC,OR]
	RewriteCond %{REQUEST_URI} ((null)|{$itemURL}|cAsT(0x|echo(.*)kae|etc/passwd|eval(|self/environ|+union+all+select) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(awstats|(c99|php|web)shell|document_root|error_log|listinfo|muieblack|remoteview|site((.){0,2})copier|sqlpatch|sux0r) [NC,OR]
	RewriteCond %{REQUEST_URI} (/)((php|web)?shell|conf(ig)?|crossdomain|fileditor|locus7|nstview|php(get|remoteview|writer)|r57|remview|sshphp|storm7|webadmin)(.*)(.|() [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(author-panel|bitrix|class|database|(db|mysql)-?admin|filemanager|htdocs|httpdocs|https?|mailman|mailto|msoffice|mysql|_?php-?my-?admin(.*)|sql|system|tmp|undefined|usage|var|vhosts|webmaster|www)(/) [NC,OR]
	RewriteCond %{REQUEST_URI} (base64_(en|de)code|benchmark|child_terminate|e?chr|eval|exec|function|fwrite|(f|p)open|html|leak|passthru|p?fsockopen|phpinfo|posix_(kill|mkfifo|setpgid|setsid|setuid)|proc_(close|get_status|nice|open|terminate)|(shell_)?exec|system)(.*)(()(.*)()) [NC,OR]
	RewriteCond %{REQUEST_URI} (.)(7z|ab4|afm|aspx?|bash|ba?k?|bz2|cfg|cfml?|cgi|conf(ig)?|ctl|dat|db|dll|eml|et2|exe|fec|fla|hg|inc|ini|inv|jsp|log|lqd|mbf|mdb|mmw|mny|old|one|out|passwd|pdb|pl|psd|pst|ptdb|pwd|py|qbb|qdf|rar|rdf|sdb|sql|sh|soa|swf|swl|swp|stx|tar|tax|tgz|tls|tmd|wow|zlib)$ [NC,OR]
	RewriteCond %{REQUEST_URI} (/)(^$|00.temp00|0day|3xp|70bex?|admin_events|bkht|(php|web)?shell|configbak|curltest|db|dompdf|filenetworks|hmei7|index.php/index.php/index|jahat|kcrew|keywordspy|mobiquo|mysql|nessus|php-?info|racrew|sql|ucp|webconfig|(wp-)?conf(ig)?(uration)?|xertive)(.php) [NC]	
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_REQUEST_URI:%1___%2___%3]	
</IfModule>
# 7G:[USER AGENT]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{HTTP_USER_AGENT} ([a-z0-9]{2000,}) [NC,OR]
	RewriteCond %{HTTP_USER_AGENT} (<|%0a|%0d|%27|%3c|%3e|%00|0x00) [NC,OR]
	RewriteCond %{HTTP_USER_AGENT} ((c99|php|web)shell|remoteview|site((.){0,2})copier) [NC,OR]
	RewriteCond %{HTTP_USER_AGENT} (base64_decode|bin/bash|disconnect|eval|lwp-download|unserialize|x22) [NC,OR]
	RewriteCond %{HTTP_USER_AGENT} (360Spider|acapbot|acoonbot|ahrefs|alexibot|asterias|attackbot|backdorbot|becomebot|binlar|blackwidow|blekkobot|blexbot|blowfish|bullseye|bunnys|butterfly|careerbot|casper|checkpriv|cheesebot|cherrypick|chinaclaw|choppy|clshttp|cmsworld|copernic|copyrightcheck|cosmos|crescent|cy_cho|datacha|demon|diavol|discobot|dittospyder|dotbot|dotnetdotcom|dumbot|emailcollector|emailsiphon|emailwolf|exabot|extract|eyenetie|feedfinder|flaming|flashget|flicky|foobot|g00g1e|getright|gigabot|go-ahead-got|gozilla|grabnet|grafula|harvest|heritrix|httrack|icarus6j|jetbot|jetcar|jikespider|kmccrew|leechftp|libweb|linkextractor|linkscan|linkwalker|loader|miner|majestic|mechanize|mj12bot|morfeus|moveoverbot|netmechanic|netspider|nicerspro|nikto|ninja|nutch|octopus|pagegrabber|planetwork|postrank|proximic|purebot|pycurl|python|queryn|queryseeker|radian6|radiation|realdownload|rogerbot|scooter|seekerspider|semalt|seznambot|siclab|sindice|sistrix|sitebot|siteexplorer|sitesnagger|skygrid|smartdownload|snoopy|sosospider|spankbot|spbot|sqlmap|stackrambler|stripper|sucker|surftbot|sux0r|suzukacz|suzuran|takeout|teleport|telesoft|true_robots|turingos|turnit|vampire|vikspider|voideye|webleacher|webreaper|webstripper|webvac|webviewer|webwhacker|winhttp|wwwoffle|woxbot|xaldon|xxxyy|yamanalab|yioopbot|youda|zeus|zmeu|zune|zyborg) [NC]	
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_USER_AGENT:%1]	
</IfModule>
# 7G:[REMOTE HOST]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{REMOTE_HOST} (163data|amazonaws|colocrossing|crimea|g00g1e|justhost|kanagawa|loopia|masterhost|onlinehome|poneytel|sprintdatacenter|reverse.softlayer|safenet|ttnet|woodpecker|wowrack) [NC]	
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_REMOTE_HOST:%1]	
</IfModule>
# 7G:[HTTP REFERRER]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{HTTP_REFERER} (semalt.com|todaperfeita) [NC,OR]
	RewriteCond %{HTTP_REFERER} (ambien|bluespill|cialis|cocaine|ejaculat|erectile|erections|hoodia|huronriveracres|impotence|levitra|libido|lipitor|phentermin|pro[sz]ac|sandyauer|tramadol|troyhamby|ultram|unicauca|valium|viagra|vicodin|xanax|ypxaieo) [NC]
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_HTTP_REFERRER:%1]	
</IfModule>
# 7G:[REQUEST METHOD]
<IfModule mod_rewrite.c>	
	RewriteCond %{REQUEST_URI} !(7g_log.php) [NC]	
	RewriteCond %{REQUEST_METHOD} ^(connect|debug|delete|move|put|trace|track) [NC]	
	RewriteRule .* - [F,L]	
	# RewriteRule .* /7g_log.php?log [L,NE,E=7G_REQUEST_METHOD:%1]	
</IfModule>
#################################################################
# 7G Addon: Stop Aggressive Scanning for Uploads-Related Targets
# https://perishablepress.com/stop-aggressive-scanning-uploads/
#################################################################
<IfModule mod_rewrite.c>
	# RewriteCond %{REQUEST_URI} /php(unit)?/ [NC,OR]
	# RewriteCond %{REQUEST_URI} .(aspx?|env|git(ignore)?|phtml|rar|well-known) [NC,OR]
	# RewriteCond %{REQUEST_URI} /(cms|control_panel|dashboard|home_url=|lr-admin|manager|panel|staff|webadmin) [NC,OR]
	# RewriteCond %{REQUEST_URI} /(adm(in)?|blog|cache|checkout|controlpanel|ecommerce|export|magento(-1|web)?|market(place)?|mg|onli(n|k)e|orders?|shop|tmplconnector|uxm|web?store)/ [NC,OR]
	
	RewriteCond %{REQUEST_URI} (_timthumb_|timthumb.php) [NC,OR]
	RewriteCond %{REQUEST_URI} /(install|wp-config|xmlrpc).php [NC,OR]
	RewriteCond %{REQUEST_URI} /(uploadify|uploadbg|up__uzegp).php [NC,OR]
	RewriteCond %{REQUEST_URI} /(comm.js|mysql-date-function|simplebootadmin|vuln.htm|www.root.) [NC,OR]
	RewriteCond %{REQUEST_URI} /(admin-uploadify|fileupload|jquery-file-upload|upload_file|upload|uploadify|webforms)/ [NC,OR]
	RewriteCond %{REQUEST_URI} /(ajax_pluginconf|apikey|connector(.minimal)?|eval-stdin|f0x|login|router|setup-config|sssp|vuln|xattacker).php [NC]
	
	RewriteRule .* - [F,L]
	
</IfModule>
# ----------------------------------------------------------------------
#   Block WordPress files from outside access
# ----------------------------------------------------------------------	
# No access to the install.php
<files install.php>
Order allow,deny
Deny from all
</files>
 
# No access to the wp-config.php 
<files wp-config.php>
Order allow,deny
Deny from all
</files>
 
# No access to the readme.html
<files readme.html>
 Order Allow,Deny
 Deny from all
 Satisfy all
</Files>
 
# No access to the liesmich.html for DE Edition
<Files liesmich.html>
 Order Allow,Deny
 Deny from all
 Satisfy all
</Files>
 
# No error log access 
<files error_log>
Order allow,deny
Deny from all
</files>
#No access to the .htaccess und .htpasswd
<FilesMatch "(.htaccess|.htpasswd)">
  Order deny,allow
  Deny from all
</FilesMatch>
# Block access to includes folder
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
# ----------------------------------------------------------------------
# | Blocking the »ReallyLongRequest« Bandit - New in 2018  
#   https://perishablepress.com/blocking-reallylongrequest-bandit/
# ----------------------------------------------------------------------
<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_METHOD} .* [NC]
    RewriteCond %{THE_REQUEST}  (YesThisIsAReallyLongRequest|ScanningForResearchPurpose) [NC,OR]
    RewriteCond %{QUERY_STRING} (YesThisIsAReallyLongRequest|ScanningForResearchPurpose) [NC]
    RewriteRule .* - [F,L]
</IfModule>
# --------------------------------------------------------------------------------------------
#   Ultimate hotlink protection - IMPORTANT: Change »?domain« in line 361 to your domain name
#   Example: ?andreas-hecht ### if you do not use https, change https in line 361 to http
# --------------------------------------------------------------------------------------------
#<IfModule mod_rewrite.c>
# RewriteEngine on
# RewriteCond %{HTTP_REFERER}     !^$
# RewriteCond %{REQUEST_FILENAME} -f
# RewriteCond %{REQUEST_FILENAME} .(gif|jpe?g?|png)$           [NC]
# RewriteCond %{HTTP_REFERER}     !^https?://([^.]+.)?domain. [NC]
# RewriteRule .(gif|jpe?g?|png)$                             - [F,NC,L]
#</ifModule>
# ----------------------------------------------------------------------
#   Protect your WordPress Login with HTTP Authentification
# ----------------------------------------------------------------------
# If you want to use it, comment it out and set your path to .htpasswd
#<Files wp-login.php>
#AuthName "Admin-Bereich"
#AuthType Basic
#AuthUserFile /usr/local/www/apache24/your-path/your-domain.com/.htpasswd 
#require valid-user
#</Files>
# ----------------------------------------------------------------------
#   Switch off the security risk XML-RPC interface completely
# ----------------------------------------------------------------------
### @see https://digwp.com/2009/06/xmlrpc-php-security/
<Files xmlrpc.php>
 Order Deny,Allow
 Deny from all
</Files>
# -----------------------------------------------------------------------------
#  HTTP SECURITY HEADER | Test on: https://securityheaders.com | UPDATE 2020
# -----------------------------------------------------------------------------
### @see https://scotthelme.co.uk/hardening-your-http-response-headers
### UPDATE 2020
## No-Referrer-Header
<IfModule mod_headers.c>
    Header set Referrer-Policy "no-referrer"
</IfModule>
## Strict Origin when cross origin Header
#@see https://scotthelme.co.uk/a-new-security-header-referrer-policy/
<IfModule mod_headers.c>
Header set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>
## X-FRAME-OPTIONS-Header
<IfModule mod_headers.c>
    Header set X-Frame-Options "sameorigin"
</IfModule>
## X-XSS-PROTECTION-Header
<IfModule mod_headers.c>
    Header set X-XSS-Protection "1; mode=block"
</IfModule>
## X-Content-Type-Options-Header
<IfModule mod_headers.c>
    Header set X-Content-Type-Options "nosniff"
</IfModule>
## Strict-Transport-Security-Header - for HTTPS
<IfModule mod_headers.c>
   Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
</IfModule>
## This prevents that false issued certificates for this website can be used unnoticed. (Experimental)
## @see https://tools.ietf.org/html/draft-ietf-httpbis-expect-ct-02
<IfModule mod_headers.c>
   Header set Expect-CT "enforce, max-age=21600"	
</IfModule>
# ----------------------------------------------------------------------
# The original WordPress Rewrite Rules - Do not change anything here, 
# except you are using a WordPress Multisite
# ----------------------------------------------------------------------
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
style="display:block" data-ad-client="ca-pub-2733976072598253" data-ad-slot="4541255017" data-ad-format="auto" data-full-width-responsive="true">

Checkliste WordPress Pagespeed Optimierung

WordPress Cache Plugin Übersicht zur Pagespeed Optimierung im Vergleich

Vergleich WordPress Cache Plugins zur Pagespeed Optimierung
Klicke auf den Button des jeweiligen Plugins, welches du Downloaden möchtest, um zur Downloadseite zu gelangen.

Pagespeed Richtig Messen – Ladezeit Optimierung ohne Verfälschte Daten Analysieren

Messe deinen Pagespeed richtig um keine Verfälschte Daten zu erhalten wie langsamere Website. WordPress schneller machen und richtig Testen. Lege dein Augenmerk auf Ladezeit, Seitengrösse, Anfragen. Schau das Video an.
YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Dir hat der Beitrag gefallen? Bewerte, Teile unseren Beitrag zu WordPress schneller machen. Vielen Dank, bis zum nächsten Beitrag.

Werbung

Klicken Sie auf den unteren Button, um den Inhalt von Werbung KW Finder zu laden.

Inhalt laden

Translate

Klicken Sie auf den unteren Button, um den Inhalt von Mailjet Newsletter Opt In zu laden.

Inhalt laden

War der Beitrag Hilffreich?

Schenke uns eine Bewertung! Diese Hilft uns, den Content ständig zu Verbessern und vor allem, anderen Unsern. Vielen Dank!

Durschnittliche-Wertung: 4.5 / 5. Anzahl-Bewertungen: 2

Bewertung:

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

The following two tabs change content below.

tobias.mueller

Founder, COO
Tobias Müller ist SEO Experte, Gründer und COO von WebGemacht. Seit 2016 Spezialisiert sich Tobias Müller auf ganzheitliche Suchmaschinenoptimierung. Dazu zählt nicht nur Google, auch Social Media Kanäle lassen sich Suchmaschinenoptimieren. Ein Backlink ist für Ihn wie ein Geschenk zu Weihnachten. Du möchtest mehr über unseren Gründer erfahren? Schau in seine Social Media Profile!

Pin It on Pinterest

Share This