Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
für den Launch einer
TYPO3-Website
Checkliste
mit vielen nütz...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
Ist der HTML-Code valide?
https://validator.w3.org/public...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
Wurde Google Search Console
für die Website eingerichtet?...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
robots = PAGE
robots {
typeNum = 201
config {
disableAllH...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
Kann GoogleBot auf mobile Version
der Website zugreifen?
...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
TYPO3-Extension
„dd_googlesitemap“
Ist die Google-Sitemap...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
Wurde Meta-Tag für Robots auf
„index, follow“ gesetzt?
pa...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
SEO
Sind Seiten, welche aus Listenelementen
generiert werden,...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Performance
Werden Webfonts asynchron geladen?
Google Fonts: ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Performance
Wurden große PNGs verkleinert?
https://tinypng.co...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Performance
Wurden die Performance-Killer beseitigt?
https://...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Performance
Werden JavaScript- und CSS-Dateien
komprimiert?
C...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Performance
Werden http-Requests für JavaScript-
und CSS-Date...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden die Einträge unter „Berichte“
im TYPO3-Backend...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Ist der Pfad zu „templates“
über Konstante gesetzt?
P...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden alle Übersichtsseiten von
der Suche ausgenomme...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
[SYS][displayErrors] = 2
[SYS][devIPmask] = 'unsere I...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
options.clearCache.all = 1
Kann die Redaktion den Cac...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden unnötige Eingabefelder
für die Redaktion ausge...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden alle Einträge in „Database
Compare“ (Install T...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden die Datei- und Verzeichnis-
berechtigungen ang...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Ist der Scheduler korrekt eingerichtet?
im Backend üb...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Laufen die Scheduler-Tasks auch
bei Ausführung über c...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Werden im TypoScript-Object-Browser
Fehlermeldungen a...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Ist das TYPO3-Admin-Panel
für Admins aktiviert?
admPa...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Ist das TYPO3-Admin-Panel
für Redakteure aktiviert?
a...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Können Extensions über das Repository
aktualisiert we...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wird der Suchindex (ke_search)
automatisch erneuert?
...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
config.linkVars = L(0-3)
Sind die Werte der LinkVars ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurde das Install-Tool-Passwort geändert?
in KeePass ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
TCEMAIN.permissions {
	 userid = 3
	 groupid = 1
	 ##...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden die Configuration Presets
auf „Live“ umgestell...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden Extensions aktualisiert?
verringert Sicherheit...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurden alle nicht benötigten
Extensions vom Server ge...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Wurde das Caching aktiviert?
config.no_cache = {$no_c...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Backend
Sind die Dateitypen für den Upload
sinnvoll eingeschr...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Wurde die TYPO3-Version auf
den letzten Stand gebracht...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Ist die .htaccess vorhanden?
_.htaccess in .htaccess u...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Wird .htaccess von Apache berücksichtigt?
<Directory /...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Wurde das Error-Log am Server geprüft?
404-Fehler und ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Sind noch Referenzen auf den
Entwicklungs-Server vorha...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Server
Wurden Datenbank-Dumps
und Tar-Archive gelöscht?
Trans...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Werden Benutzereingaben gegen
Cross-Site-Scripting a...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist das Favicon vorhanden?
page.shortcutIcon = favic...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist das Stylesheet für die
Druckansicht vorhanden?
C...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurden etwaige Test-E-Mail-Adressen
ausgetauscht?
Po...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurden mehrfach eingefügte
JavaScript-Bibliotheken e...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurde die Extension „sourceopt“
installiert und konf...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurde die parsetime-Ausgabe deaktiviert?
config.debu...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist die 404-Seite definiert?
[FE][pageNotFound_handl...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurde eine Datei für Wartungsarbeiten
angelegt?
HTML...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist RealURL aktiviert?
config.tx_realurl_enable = 1
...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Sind unwichtige Verweisseiten aus dem
RealURL-Pfad a...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurden die Links überprüft?
https://validator.w3.org...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wurde die Website mit einem
Accessibility-Checker üb...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Wird der Cache bei Änderung von
Listenelementen auto...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist der Page-Browser für Listenansichten
eingerichte...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Können einzelne Extensions im
Frontend deaktiviert w...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist der Zeilenabstand für Überschriften
sinnvoll ges...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Werden im Entwicklertool des
Browsers Fehler angezei...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist die Lightbox HTML5-konform?
rel-Attribut nicht v...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Frontend
Ist die Scrollbar eingeblendet,
damit die Seite nich...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wurden Inline-Styles ins externe
Stylesheet übertragen?
...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wird Extension-JavaScript global
oder lokal eingebunden?...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wurden die „to do“-Kommentare
behandelt?
https://www.jet...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Entspricht der PHP-Code der
Spezifikation „PSR-2“?
http:...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wurde der Code ins SVN-Repository
eingecheckt?
nicht zu ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wurden die Einträge im Deprecation-Log
überprüft?
Einträ...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
Code
Wurden alle devLog-Aufrufe entfernt?
grep -r -i "::devLo...
© 2016 Stefan Franke – http://de.slideshare.net/StefanFranke
https://www.youtube.com/watch?v=1PCX5uqBfFY
Natürlich nicht! ...
Upcoming SlideShare
Loading in …5
×

TYPO3-Checkliste

465 views

Published on

Checkliste für den Launch einer TYPO3-Website. Die Bereiche SEO, Frontend, Backend, PHP-Code, Server und Performance werden behandelt.

Published in: Internet
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

TYPO3-Checkliste

  1. 1. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke für den Launch einer TYPO3-Website Checkliste mit vielen nützlichen Tipps & Tricks
  2. 2. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO Ist der HTML-Code valide? https://validator.w3.org/public nicht nur Startseite prüfen!
  3. 3. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO Wurde Google Search Console für die Website eingerichtet? https://www.google.com/webmasters/tools/public page.meta.google-site-verification = CODE
  4. 4. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO robots = PAGE robots { typeNum = 201 config { disableAllHeaderCode = 1 additionalHeaders = Content-type:text/plain } 10 = TEXT 10 { wrap ( User-Agent: * Allow: / Disallow: /fileadmin/Daten/ Disallow: /*?id=* Sitemap: /?eID=dd_googlesitemap ) } } Ist „robots.txt“ vorhanden? Wird dynamisch mittels TypoScript erzeugt kein Disallow für CSS und JS RealURL-Konfiguration $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAU LT']['fileName']['index']['robots.txt']['keyVal ues']['type'] = 201;
  5. 5. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO Kann GoogleBot auf mobile Version der Website zugreifen? https://www.google.com/webmasters/tools/mobile-friendly/public
  6. 6. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO TYPO3-Extension „dd_googlesitemap“ Ist die Google-Sitemap vorhanden? Eintragen in: robots.txt Google Search Console  
  7. 7. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO Wurde Meta-Tag für Robots auf „index, follow“ gesetzt? page.meta.robots = {$meta_robots} meta_robots = index,follow   über Constants steuern überprüfbar z.B. mit Chrome Extension „SEO Indexability“ https://chrome.google.com/webstore/detail/seo-indexability/mnkcondlhkdpglcdobgohdilckbcbjaj
  8. 8. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke SEO Sind Seiten, welche aus Listenelementen generiert werden, aus SEO-Sicht eindeutig? Eindeutigkeit gefordert für: title-Tag meta-Tag „description“ H1    dürfen nicht gleich sein!
  9. 9. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Performance Werden Webfonts asynchron geladen? Google Fonts: JavaScript um Seitenladevorgang nicht aufzuhalten
  10. 10. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Performance Wurden große PNGs verkleinert? https://tinypng.com/public
  11. 11. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Performance Wurden die Performance-Killer beseitigt? https://gtmetrix.com (PageSpeed, YSlow) https://developers.google.com/speed/pagespeed/insights/ public public nur grobe Probleme lösen!
  12. 12. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Performance Werden JavaScript- und CSS-Dateien komprimiert? Code in .htaccess einkommentieren config.compressCss = 1 config.compressJs = 1 page.includeCSS { bezeichnung = {$templates}css/datei.css bezeichnung.disableCompression = 1 } Ausnahme [BE][compressionLevel] = 5 [FE][compressionLevel] = 5 demnächst vielleicht mehr dazu... ABER: noch besser mit Grunt!
  13. 13. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Performance Werden http-Requests für JavaScript- und CSS-Dateien reduziert? config.concatenateCss = 1 config.concatenateJs = 1 config.concatenateJsAndCss = 1   page.includeJS.titel = datei.js page.includeJS.titel.excludeFromConcatenation = 1 sinnvoller Titel („fancybox“ besser als „file1“ etc.) Ausnahme
  14. 14. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden die Einträge unter „Berichte“ im TYPO3-Backend geprüft? gibt Auskunft über problematische Einstellungen, fehlerhafte Extensions etc.
  15. 15. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Ist der Pfad zu „templates“ über Konstante gesetzt? Pfad am Entwicklungssystem in constants.ts definieren Pfad am Live-System im Template-Datensatz überschreiben   templates = fileadmin/pfad/zu/templates/ plugin.tx_myext.styles = {$templates}css/myext.css   etwaige Vorkommen aufspüren: - SSH: grep -r -i "fileadmin/pfad/zu/templates" . - Suche im TypoScript Object Browser - TYPO3-Suche im Backend
  16. 16. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden alle Übersichtsseiten von der Suche ausgenommen? über Seiteneigenschaften von der Suche ausschließen: Listenansichten Suchformular Suchresultate etc.    
  17. 17. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend [SYS][displayErrors] = 2 [SYS][devIPmask] = 'unsere IP-Adresse' Wurden die Debugging-Settings angepasst?
  18. 18. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend options.clearCache.all = 1 Kann die Redaktion den Cache löschen? UserTsConfig:
  19. 19. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden unnötige Eingabefelder für die Redaktion ausgeblendet? Steuerung über Access Lists ... nicht über TCEFORM   TCEFORM.table.field.disabled = 1 auch für Admins gesperrt!
  20. 20. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden alle Einträge in „Database Compare“ (Install Tool) behandelt? wesentlich einfacher, solange Website noch nicht online ist zur Sicherheit vorher ein mysqldump
  21. 21. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden die Datei- und Verzeichnis- berechtigungen angepasst? Apache-User ab TYPO3 6.x im Install-Tool überprüfbar   chown -R www-data:www-data pfad
  22. 22. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Ist der Scheduler korrekt eingerichtet? im Backend überprüfen
  23. 23. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Laufen die Scheduler-Tasks auch bei Ausführung über cron? manuelle Ausführung: php.ini Ausführung via cron: php_cli.ini   unterschiedliche PHP-Konfigurationen
  24. 24. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Werden im TypoScript-Object-Browser Fehlermeldungen ausgegeben? existieren alle eingebundenen Dateien? sind Klammern korrekt gesetzt?   kann Teile von TypoScript deaktivieren
  25. 25. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Ist das TYPO3-Admin-Panel für Admins aktiviert? admPanel.enable.preview = 1 admPanel.enable.cache = 1 UserTsConfig: page.config.admPanel = 1
  26. 26. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Ist das TYPO3-Admin-Panel für Redakteure aktiviert? admPanel.enable.preview = 1 UserTsConfig: page.config.admPanel = 1
  27. 27. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Können Extensions über das Repository aktualisiert werden? [SYS][curlUse] = 1
  28. 28. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wird der Suchindex (ke_search) automatisch erneuert? Task im Scheduler einrichten
  29. 29. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend config.linkVars = L(0-3) Sind die Werte der LinkVars eingeschränkt?
  30. 30. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurde das Install-Tool-Passwort geändert? in KeePass eintragen in SharePoint eintragen   sicheres Passwort mit KeePass generieren
  31. 31. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend TCEMAIN.permissions { userid = 3 groupid = 1 ### optional Zugriffsrechte //user = show, editcontent, edit, delete, new //group = show, editcontent, edit, delete, new } Wird die Benutzergruppe „Zugriff“ neuen Seiten automatisch zugewiesen?
  32. 32. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden die Configuration Presets auf „Live“ umgestellt? Install Tool ab TYPO3 6.x [SYS][clearCacheSystem] = 1 manuell aktivieren
  33. 33. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden Extensions aktualisiert? verringert Sicherheitsprobleme erleichtert möglicherweise spätere Updates  
  34. 34. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurden alle nicht benötigten Extensions vom Server gelöscht? verringert Sicherheitsprobleme
  35. 35. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Wurde das Caching aktiviert? config.no_cache = {$no_cache} Extbase: non-cacheable actions (ext_localconf.php)   bereits während der Entwicklung aktivieren! Tipp: Caching immer aktiv, jedoch mittels Admin-Panel deaktiviert!
  36. 36. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Backend Sind die Dateitypen für den Upload sinnvoll eingeschränkt? [GFX][imagefile_ext] = 'jpg,jpeg,png,gif'
  37. 37. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Wurde die TYPO3-Version auf den letzten Stand gebracht? https://get.typo3.org/public wget get.typo3.org/7.6 --content-disposition tar xzvf datei.tar.gz innerhalb einer Version gibt es keine Datenbank-Updates, sondern nur bug fixes
  38. 38. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Ist die .htaccess vorhanden? _.htaccess in .htaccess umbenennen cp typo3_src/_.htaccess ./.htaccess
  39. 39. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Wird .htaccess von Apache berücksichtigt? <Directory /var/www/html/pfad/zu/projekt/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> prüfen, ob .htaccess aktiv „absichtlicher“ Fehler in .htaccess muss Error 500 erzeugen
  40. 40. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Wurde das Error-Log am Server geprüft? 404-Fehler und andere Probleme prüfen tail -f /var/logs/apache2/error.log | grep 404  vhosts-Konfiguration > sites-enabled
  41. 41. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Sind noch Referenzen auf den Entwicklungs-Server vorhanden? grep -r -i "dev.website.com" . TypoScript-Object-Browser durchsuchen interne TYPO3-Suche SSH   
  42. 42. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Server Wurden Datenbank-Dumps und Tar-Archive gelöscht? Transfer-Daten entfernen: Live-Server Development-Server   Sicherheit & Speicherplatz
  43. 43. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Werden Benutzereingaben gegen Cross-Site-Scripting abgesichert? GeneralUtility::removeXSS($string) Eingabefelder mit JavaScript-Code testen: <script>alert(document.cookie)</script> Eingabewerte behandeln:
  44. 44. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist das Favicon vorhanden? page.shortcutIcon = favicon.ico Transparenz erhalten favicon.ico in root-Verzeichnis platzieren   falls nur eine Website in TYPO3-Instanz
  45. 45. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist das Stylesheet für die Druckansicht vorhanden? Chrome > Entwicklertools > Console > Rendering Settings
  46. 46. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurden etwaige Test-E-Mail-Adressen ausgetauscht? Powermail eigene Extensions   Konfiguration zentral über Constants
  47. 47. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurden mehrfach eingefügte JavaScript-Bibliotheken entfernt? z. B. Powermail (jQuery)
  48. 48. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurde die Extension „sourceopt“ installiert und konfiguriert? page.config.sourceopt.enabled = 1 page.config.sourceopt.formatHtml = 1 nicht komprimieren: robots.txt Newsletter  
  49. 49. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurde die parsetime-Ausgabe deaktiviert? config.debug = 0
  50. 50. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist die 404-Seite definiert? [FE][pageNotFound_handling] = 'seite-nicht-gefunden' keine ID angeben, sondern RealURL-Pfad
  51. 51. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurde eine Datei für Wartungsarbeiten angelegt? HTML-Datei: „Derzeit werden Wartungsarbeiten durchgeführt...“ [FE][pageUnavailable_handling] = 'unavailable.html' [FE][pageUnavailable_force] = 1 Kontaktinformationen inkludieren
  52. 52. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist RealURL aktiviert? config.tx_realurl_enable = 1 diverse Anpassungen nach serialisiertem Code platzieren serialisierte Konfiguration schneller
  53. 53. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Sind unwichtige Verweisseiten aus dem RealURL-Pfad ausgeschlossen? z.B. „/main-nav/“ mittels „dd_googlesitemap“ leicht überprüfbar
  54. 54. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurden die Links überprüft? https://validator.w3.org/checklink http://home.snafu.de/tilman/xenulink.html public public
  55. 55. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wurde die Website mit einem Accessibility-Checker überprüft? http://achecker.ca/checker/ http://wave.webaim.org/ public public grobe Probleme behandeln
  56. 56. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Wird der Cache bei Änderung von Listenelementen automatisch gelöscht? TCEMAIN.clearCacheCmd = 1,20,126 TCEMAIN.clearCacheCmd = all  
  57. 57. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist der Page-Browser für Listenansichten eingerichtet? Konfiguration Styling   sind genug Testdatensätze vorhanden?
  58. 58. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Können einzelne Extensions im Frontend deaktiviert werden? Steuerung über Constants Ausnahme über [SYS][devIPMask] Bootstrap-Alert o. Ä. einblenden   
  59. 59. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist der Zeilenabstand für Überschriften sinnvoll gesetzt? kann bei zu kurzen Überschriften am Testsystem übersehen werden global setzen: body { line-height: 1.3 }
  60. 60. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Werden im Entwicklertool des Browsers Fehler angezeigt? fehlende Bilder fehlende CSS-Dateien JavaScript-Fehler http-Requests in https-Umgebung    
  61. 61. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist die Lightbox HTML5-konform? rel-Attribut nicht valide in HTML5 die meisten Lightbox-Varianten können über data-Attribute gesteuert werden 
  62. 62. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Frontend Ist die Scrollbar eingeblendet, damit die Seite nicht „hüpft“? body { overflow-y: scroll }
  63. 63. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wurden Inline-Styles ins externe Stylesheet übertragen? HTML-Code sollte keine Inline-Styles enthalten
  64. 64. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wird Extension-JavaScript global oder lokal eingebunden? Extension auf (fast) allen Seiten: Ressourcen global einbinden page.10.includeFooterJS.banner = typo3conf/ext/pfad/zu/banner.js  über Constants steuern, ob lokal oder global Extension nur auf einzelnen Seiten: Ressourcen in Extension lokal über PageRenderer einbinden 
  65. 65. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wurden die „to do“-Kommentare behandelt? https://www.jetbrains.com/help/phpstorm/10.0/todo-tool- window.html https://www.jetbrains.com/help/phpstorm/10.0/defining-todo- patterns-and-filters.html public public
  66. 66. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Entspricht der PHP-Code der Spezifikation „PSR-2“? http://blog.jetbrains.com/webide/2012/11/more-php-formatting- options-and-bundled-code-styles-for-ps/ public Ctrl + Alt + L
  67. 67. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wurde der Code ins SVN-Repository eingecheckt? nicht zu viel committen! ignore list (*.log, baseurl.ts,...)
  68. 68. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wurden die Einträge im Deprecation-Log überprüft? Einträge eigener Extensions behandeln Einträge fremder Extensions behandeln, damit Deprecation-Log nicht zugemüllt wird  
  69. 69. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke Code Wurden alle devLog-Aufrufe entfernt? grep -r -i "::devLog" . nicht benötigte devLog-Aufrufe entfernen über Constants steuerbar machen  
  70. 70. © 2016 Stefan Franke – http://de.slideshare.net/StefanFranke https://www.youtube.com/watch?v=1PCX5uqBfFY Natürlich nicht! :-) Datenbank-Tuning Grunt/Gulp Bower SVN-Export-System SVG statt PNG ...      

×