1. Technical SEO für Beginner
Technical SEO
für Beginner
SEOCampixx 2015
2. Technical SEO für Beginner
Wer bin ich?
• Jan Berens
• Administrator Tracking & Webanalyse
• bei der Douglas GmbH in Köln
• Freizeit - SEO, - Affiliate, - Techie
• blogge ein bisschen auf www.janberens.de
• über Web Tech- , SEO- , Tracking- und Affiliate- Zeugs
3. Technical SEO für Beginner
Worum geht es heute?
• Was ist Techincal SEO?
• optimale Voraussetzungen schaffen
• Crawling & Indexierung – Management
• Page Speed
• De-Duplizierung
• Planung von Weiterleitungen
•Die beliebtesten Technical SEO Fehler
• .htaccess Magic
5. Technical SEO für Beginner
OffPage SEO:
• Social Signals
• Backlinks
OnPage SEO:
• Content
• HTML – Struktur
Technisches SEO:
• Steuerung des Crawlings
• Page Speed
• Seiten - Infrastruktur
• Server Setup
• optimale Ausnutzung Crawl Budget
6. Technical SEO für Beginner
Quelle: http://searchengineland.com/seotable
7. Technical SEO für Beginner
Quelle: http://searchengineland.com/seotable
8. Technical SEO für Beginner
2. optimale Voraussetzungen schaffen
Seo – „ Selbstverständlichkeiten“
9. Technical SEO für Beginner
• Gültiger & optimierter HTML Code
• Syntaxfehler vermieden & korrigiert
• Fließtext optimiert (Modell: „Invertierte Pyramide“)
• Aufzählungen sinnvoll genutzt
• Titels, Descriptions, Headings (Überschriften) im HTML
• Links & Anchor-Texte optimiert
• Bilder optimiert (Alt Tagging)
• Inhalte richtig strukturiert und optimiert
• Meta-Angaben optimiert
• Broken Links gefunden und beseitigt
• Interne Verlinkung optimiert
•URL Struktur optimiert
10. Technical SEO für Beginner
3. Crawling & Indexierung – Management
Crawlability - Crawling Budget - Crawler Control
11. Technical SEO für Beginner
Crawlability
• mach es der Suchmaschine einfach, durch…
• sämtliche Inhalte crawlbar machen
• alle Seiten sind nach maximal 3 - 4 Clicks erreichbar
• alle Links sind lesbar (NO JS, NO CSS, etc.)
• schnelle Seitenauslieferung (Page Speed)
• Unique Seiten und kein Duplicate Content
• HTML Code schlank und in der Struktur eindeutig
• Informations- , Seiten- & Navigationsstruktur eindeutig
• Pagination Auszeichnung durch rel=„next“ und rel=„prev“
Maximal effiziente Seite
12. Technical SEO für Beginner
Crawl - Budget
• das Budget einer URL beim Google Crawler
• gibt an…
• wie viel Zeit der Google Crawler auf der Seite verbringt
• wie oft der Crawler die Seite wieder besucht
• wie Tief der Crawler die Seite crawlt
• abhängig von…
• Backlinks
• Internen Verlinkung
• Page Speed
• deswegen solltet Ihr…
• den Page Speed optimieren
• das Crawler Controlling optimieren
13. Technical SEO für Beginner
eigene Seite crawlen:
• Screaming Frog
http://www.screamingfrog.co.uk/seo-spider/
• Xenu
http://home.snafu.de/tilman/xenulink.html
• strucr.com
https://strucr.com/
• Deepcrawl
http://deepcrawl.co.uk/
• botify.com
http://botify.com
• SEOTools for Excel 4.2
http://nielsbosma.se/2015/01/10/seotools-4-2-introducing-the-spider/
14. Technical SEO für Beginner
Crawl Status checken:
• Google Webmaster Tools
https://www.google.com/webmasters/tools/?hl=de
• Site search "site:www.janberens.de“ würde kein
relevantes Ergebnis liefern, da nicht die indexierten URLs
angezeigt werden, sondern “nur” die google-bekannten
URLs
15. Technical SEO für Beginner
Crawler Control
Meta Robots Tag vs. Robots.txt vs. htaccess X-Robots-Tag
16. Technical SEO für Beginner
<meta name="robots" content="noindex, follow">
• HTML Head Tag
• Seite wird gecrawlt (Crawlbudget)
• Seite wird NICHT indexiert
• Seite wird NICHT in den Suchergebnisseiten angezeigt
17. Technical SEO für Beginner
User-Agent: *
Disallow: seite.html
• Anweisung innerhalb der robots.txt
• Seite wird NICHT gecrawlt
• Seite wird TEILWEISE indexiert
• Seite wird in den Suchergebnisseiten angezeigt
18. Technical SEO für Beginner
<FilesMatch "seite.html">
Header set X-Robots-Tag "noindex"
</FilesMatch>
• Anweisung innerhalb der htaccess Datei
• Seite wird gecrawlt (Crawlbudget)
• Seite wird NICHT indexiert
• Seite wird NICHT in den Suchergebnisseiten angezeigt
19. Technical SEO für Beginner
XML Sitemaps
XML Sitemaps nutzen und verstehen
20. Technical SEO für Beginner
Warum XML Sitemaps
• seit 2005 von Google veröffentlicht
• 2006 ziehen andere Suchmaschinen nach
• „Inhaltsverzeichnis“ der Seite
• ohne Sitemap findet der Crawler nur „durch Zufall“ neue
Seiten
• Erstellung erfolgt über Plugins automatisiert oder manuell
• Generator: https://www.xml-sitemaps.com/
• Welche Arten von Sitemaps gibt es:
• HTML Sitemap
• Bilder Sitemap
• Video Sitemap
• News Sitemap
• Mobile Sitemap
• in den Google Webmaster Tools hinterlegen
21. Technical SEO für Beginner
Crawler Analyse mit Server - Logs
• Server Logs bilden die Zugriffe von Usern und Bots ab
• Inhalt der Server – Logs gibt Aufschluss über…
• Timestamp
• Referrer
• IP
• Anfrage
• Statuscode
• Übertragende Dateigröße
• User Agent
22. Technical SEO für Beginner
• Server Logs über Tools analysieren
• logstash
http://logstash.net/
• Web Log Explorer
http://www.exacttrend.com/WebLogExplorer/
• Splunk Cloud
http://de.splunk.com
23. Technical SEO für Beginner
• Bei kleineren Server Logs würde auch Excel funktionieren
• Log File als Text nach Spalten getrennt importieren
• Zeilen mit Referrer fliegen raus
• Zeilen, die nicht als IP 66.249.*.* haben fliegen raus
https://support.google.com/webmasters/answer/80553?hl=de
• Nun lässt sich das Log – File bspw. Mit den SEO Tools
for Excel weiter aufbereiten
• Und es lassen sich diverse Fragen beantworten
• Welche URLs wurden wann wie häufig gecrawlt?
• Wie oft schaut der Crawler vorbei?
• Was wird nicht gecrawlt?
29. Technical SEO für Beginner
• HeadJS benutzen
http://headjs.com/
head.js("datei1.js", "datei2.js", datei3.js");
• Bilder optimieren
• Bilder nicht mit width und height skalieren!
• CSS Sprites für Icons verwenden
http://www.spritecow.com/
http://spriteme.org/
• Images Minimizer
https://tinypng.com/
http://www.jpegmini.com/
• gZIP aktivieren
http://www.gzip.org/
30. Technical SEO für Beginner
• Sauberes HTML
• Keine Kommentare im Live – System!
• Kein Inline - CSS!
• asynchronoches Nachladen verwenden
31. Technical SEO für Beginner
Content Delivery Networks benutzen
• CDN Anbieter
• Akamai ( http://www.akamai.de/ )
• Amazon Web Services ( http://aws.amazon.com/de/ )
• CDNetworks ( http://de.cdnetworks.com/ )
• CloudFlare ( http://www.cloudflare.com/ )
• Google Hosted Libraries ( https://developers.google.com/speed/libraries/ )
• Limelight Networks ( http://de.limelight.com/ )
• Welche Daten ins CDN?
• JavaScripts
• CSS Dateien
• Images
32. Technical SEO für Beginner
Browser Caching aktivieren
• über das .htaccess File mit mod_expires
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month 1 days"
ExpiresByType text/html "access plus 1 month 1 days"
ExpiresByType image/gif "access plus 1 month 1 days"
ExpiresByType image/jpeg "access plus 1 month 1 days"
ExpiresByType image/png "access plus 1 month 1 days"
ExpiresByType text/css "access plus 1 month 1 days"
ExpiresByType text/javascript "access plus 1 month 1 week"
ExpiresByType application/x-javascript "access plus 1 month 1 days"
</IfModule>
• über das .htaccess File mit mod_headers
<IfModule mod_headers.c="">
<filesmatch ".(gif|ico|jpeg|jpe|png|css|js)$"="">
Header set Cache-Control "max-age=604800, public"
</filesmatch>
</IfModule>
33. Technical SEO für Beginner
HTTP keep-alive nutzen
• Das Laden verschiedener Dateien über eine Verbindung
wird ermöglicht
• Aktivierung über .htaccess
<ifModule mod_headers.c>
Header set Connection keep-alive
</ifModule>
• Aktivierung über das Apache Config File
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 100
34. Technical SEO für Beginner
Critical Rendering Path
• Was braucht eine für das erste Rendering im Browser?
• Relativ komplexes Verfahren mit verschiedenen Maßnahmen
• Handlungsempfehlungen von Google Developers
https://developers.google.com/web/fundamentals/performance/critical-
rendering-path/
• Zum ausprobieren:
http://jonassebastianohlsson.com/criticalpathcssgenerator/
mod_pagespeed
• Apache Modul von Google
• Sorgt für die Komprimierung von JS und CSS & das Caching
https://code.google.com/p/modpagespeed/
35. Technical SEO für Beginner
Plugin – Tipps für Wordpress
• Better Wordpress Minify => JS und CSS Files kombinieren
https://wordpress.org/plugins/bwp-minify/
• Use Google Hosted Libraries => Google CDN benutzen
https://developers.google.com/speed/libraries/devguide
• W3 Total Cache => Caching Plugin
https://wordpress.org/plugins/w3-total-cache/
• WP-Rocket => Lazy Load, Minify, CDN Unterstützung (ab 29 €)
http://wp-rocket.me/de/
36. Technical SEO für Beginner
Pro – Tipp für Google Analytics User
• Google Page Speed Insights bemängelt das fehlende
Browser – Caching von Google Analytics
• Möglichkeit das analytics.js auf den eigenen
Server zu hosten
• Anpassung im Google Analytics Code
• Cronjob für den nächtliche Abgleich der analytics.js
37. Technical SEO für Beginner
5. De - Duplizierung
Duplicate Content – 2mal problematisch
38. Technical SEO für Beginner
1. Auf zwei unterschiedlichen Seiten
• oder einfach die Google Suche
• Copyscape nutzen
http://www.copyscape.com/
39. Technical SEO für Beginner
• doppelte Titles, Description, H-Tags oder Texte
• Problem identifizieren & lösen:
• Screaming Frog
http://www.screamingfrog.co.uk/seo-spider/
• SEO Tools for Excel
http://nielsbosma.se/2015/01/10/seotools-4-2-introducing-the-spider/
• Google Webmaster Tools
Unter “HTML – Verbesserungen”
2. Innerhalb derselben Seiten
40. Technical SEO für Beginner
• verweist auf eine Quellen – Ressource
• nur diese wird indexiert
• Absolute URL verwenden (keine relative!)
• Wann ergibt das Setzen des Canonical – Tags Sinn:
• URL unter verschiedenen Versionen aufrufbar
• www.domain.de
• www.domain.de/index.html
• domain.de
• domain.de/index.html
• HTTPS Variante
• Etc.
Canonical verwenden - aber richtig
41. Technical SEO für Beginner
• grundsätzlich zwei Methoden das Canonical - Tag anzugeben
• Link Element im HTML Head
<link rel=“canonical“
href=“http://www.domain.de/seite.htm"/>
• Via .htaccess File (für Nicht – HTML Dateien)
<FilesMatch file.pdf>
Header append Link
“<http://www.domain.de/file.html>;rel=”canonical””
</FilesMatch>
42. Technical SEO für Beginner
Die häufigsten Canonical - Fehler:
• Nicht in einer Pagination verwenden!
rel="next" und rel="prev„ sind hierfür vorgesehen
• Auszeichung im HTML Head nur einmal!
• Kanonische URL muss erreichbar sein!
43. Technical SEO für Beginner
6. Planung von Weiterleitungen
HTTP Status Codes richtig einsetzen
44. Technical SEO für Beginner
HTTP Status Codes kurz vorgestellt
Quelle: http://moz.com/learn/seo/http-status-codes
Alles gut!
User, Robot & Link Juice gehen auf
die neue URL
User & Robot gehen auf
die neue URL / Link Juice bleibt
Robot & Link Juice bleiben auf
der alten URL / User sieht 404er
Robot & Link Juice gehen auf
die neue URL / User sieht alte URL
45. Technical SEO für Beginner
• Redirect per .htaccess
Weiterleitungen einrichten
• Redirect per PHP
RewriteEngine On
Redirect 301 /alte-seite.html http://www.domain.de/neue-
seite.html
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location:http://www.domain.de/neue-
seite.html");
exit;
?>
46. Technical SEO für Beginner
7. Die beliebtesten Technical SEO Fehler
Und wie ich sie vermeide bzw. löse
47. Technical SEO für Beginner
Du kennst deine Seitenstruktur nicht
Crawler (xenu, SEO Tools for Exel, Screaming Frog)
Du nutzt die Google Webmaster Tools nicht
Anmelden auf http://www.google.de/webmasters/
Keine oder doppelte Meta - Angaben
Anlegen! Check Screaming Frog!
keine oder fehlerhafte robots.txt
Anlegen & Korrigieren!
48. Technical SEO für Beginner
falsche HTTP Codes
HTTP Codes überprüfen und optimieren
Keine oder kaputte XML Sitemaps
Anlegen & Korrigieren! Check Google Webmaster Tools!
Weiterleitungsketten
Ketten auf einen Hop auflösen
www. & non-www. Verursachen duplicate Content
htaccess Rewrite
49. Technical SEO für Beginner
Verschwendung von Crawling – Budget
Linkstruktur & Page Speed verbessern
Indizierungsmanagement verbessern
Trailing-Slash am Ende einer URL verursacht duplicate Content
htaccess Rewrite
51. Technical SEO für Beginner
• Directory Listing deaktivieren
Options -Indexes
Bilder entfernt ;)
52. Technical SEO für Beginner
• Header Canonical für PDFs
<FilesMatch file.pdf>
Header append Link
“<http://www.domain.de/file.html>;rel=”canonical””
</FilesMatch>
• Mod_Rewrite for SEO-friendly URLs
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
53. Technical SEO für Beginner
• Mod_Expires for Page Speed
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif "access plus 7 days"
ExpiresByType image/ico "access plus 7 days"
ExpiresByType image/jpeg "access plus 7 days"
ExpiresByType image/jpg "access plus 7 days"
ExpiresByType image/png "access plus 7 days"
ExpiresByType text/css "access plus 7 days"
ExpiresByType text/javascript "access plus 7 days"
ExpiresByType application/x-javascript "access plus 7
days"
ExpiresByType application/javascript "access plus 7
days"
</IfModule>
54. Technical SEO für Beginner
• Mod_Headers for Page Speed
<IfModule mod_headers.c="">
<filesmatch ".(gif|ico|jpeg|jpe|png|css|js)$"="">
Header set Cache-Control "max-age=604800, public"
</filesmatch>
</IfModule>
• IP Block for Comment Spam
order allow,deny
deny from 123.123.123.123
allow from all
• Redirects
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 301 /alte-seite.html
http://www.domain.de/neue-seite.html
</IfModule>
55. Technical SEO für Beginner
• Deeplinking Blocker
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER}
!^http://(www.)?janberens.de(/.*)?$ [NC]
RewriteRule .(gif|jpg|jpeg|bmp|pdf)$ - [F]
</IfModule>
• HTTPS Redirect bei Umstellung auf HTTPS
RewriteCond %{HTTPS} != on
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R=301,L]
• Redirect non-www URLs to www URLs
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.domain.de$
RewriteRule ^(.*)$ http://www.domain.de/$1 [L,R=301]
56. Technical SEO für Beginner
• Nicht-PHP Datei als PHP File ausführen
<Files foto.jpg>
ForceType application/x-httpd-php
</Files>
• Eigene Error Pages festlegen
ErrorDocument 404 /errors/404.html
ErrorDocument 403 /errors/403.html
ErrorDocument 500 /errors/500.html
• Robots Anweisung
Header set X-Robots-Tag "noindex, noarchive, nosnippet"
57. Technical SEO für Beginner
• Referrer Spam loswerden (Semalt etc.)
RewriteEngine on
RewriteCond %{HTTP_REFERER} ^http://.*7makemoneyonline.com/
[NC,OR]
RewriteCond %{HTTP_REFERER} ^http://.*buttons-for-
websites.com/ [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://.*semalt.com/ [NC]
RewriteRule ^(.*)$ – [F,L]
RewriteEngine on
RewriteCond %{HTTP_REFERER} porn [OR]
RewriteCond %{HTTP_REFERER} pill [OR]
RewriteCond %{HTTP_REFERER} poker
RewriteRule .* - [forbidden,last]