Auditing Drupal sites for performance, content and optimal configuration

Similar documents
Site Audit ( /site_audit) Generated on Fri, 22 Aug :14:

Simple Tips to Improve Drupal Performance: No Coding Required. By Erik Webb, Senior Technical Consultant, Acquia

(An) Optimal Drupal 7 Module Configuration for Site Performance JOE PRICE

Drupal Performance Tuning

AUDIT REPORT EXAMPLE

Drupal Drush Guide. Drupal.org

How does Drupal 7 Work? Tess Flynn, KDØPQK

MASTER DRUPAL 7 MODULE DEVELOPMENT

Build it with Drupal 8

Varnish the Drupal way

Drupal for Designers

Drupal to WordPress migration worksheet

The truth about Drupal

FormAPI, AJAX and Node.js

Drupal CMS for marketing sites

Drupal and ArcGIS Yes, it can be done. Frank McLean Developer

Sitecore Health. Christopher Wojciech. netzkern AG. Sitecore User Group Conference 2015

5 Mistakes to Avoid on Your Drupal Website

Creating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION

Installing Drupal on Your Local Computer

making drupal run fast

The importance of Drupal Cache. Luis F. Ribeiro Ci&T Inc. 2013

Code Estimation Tools Directions for a Services Engagement

ekomimeetsmage Manual for version 1.0.0, 1.1.0, 1.2.0, 1.3.0, 1.4.0

Ensuring scalability and performance with Drupal as your audience grows

Drupal Module Development

From 0 to Drupal in Six Months

JAVASCRIPT, TESTING, AND DRUPAL

4x High Performance for Drupal. Presented by Fabian Franz. Step by Step

SharePoint 2010 End User - Level II

Bubble Code Review for Magento

Content Management Software Drupal : Open Source Software to create library website

Optimizing Drupal Performance. Benchmark Results

DevShop. Drupal Infrastructure in a Box. Jon Pugh CEO, Founder ThinkDrop Consulting Brooklyn NY

E-commerce is also about

D61830GC30. MySQL for Developers. Summary. Introduction. Prerequisites. At Course completion After completing this course, students will be able to:

Entites in Drupal 8. Sascha Grossenbacher Christophe Galli

AVOIDING THE GIT OF DESPAIR

How To Manage A Multi Site In Drupal

Faichi Solutions. The Changing Face of Drupal with Drupal 8

Using your Drupal Website Book 1 - Drupal Basics

Building Your First Drupal 8 Company Site

Attix5 Pro Server Edition

Avira System Speedup. HowTo

SANS Dshield Webhoneypot Project. OWASP November 13th, The OWASP Foundation Jason Lam

An Introduction to Drupal Architecture. John VanDyk DrupalCamp Des Moines, Iowa September 17, 2011

Content Management Systems: Drupal Vs Jahia

Website Optimization Tips for Speed

User s manual. Magento extension. BCP - Better Configurable Products

Open Source Content Management System for content development: a comparative study

Building Library Website using Drupal

User Management Guide

Software Development & Education Center PHP 5

Content Management System

ADMINISTRATOR GUIDE VERSION

Front-End Performance Testing and Optimization

Module Customer Ratings and Reviews Pro + Google Rich Snippets Module

Streamline your drupal development workflow in a 3-tier-environment - A story about drush make and drush aliases

Drupal Training Modules 2015

DB Audit Expert 3.1. Performance Auditing Add-on Version 1.1 for Microsoft SQL Server 2000 & 2005

LT Auditor Windows Assessment SP1 Installation & Configuration Guide

Content Management Systems: Drupal Vs Jahia

Hack-proof Your Drupal App. Key Habits of Secure Drupal Coding

Log Analysis with the ELK Stack (Elasticsearch, Logstash and Kibana) Gary Smith, Pacific Northwest National Laboratory

Develop a Native App (ios and Android) for a Drupal Website without Learning Objective-C or Java. Drupaldelphia 2014 By Joe Roberts

Module Google Rich Snippets + Product Ratings and Reviews

STeP-IN SUMMIT June 2014 at Bangalore, Hyderabad, Pune - INDIA. Mobile Performance Testing

X-POS GUIDE. v3.4 INSTALLATION SmartOSC and X-POS

Scaling out a SharePoint Farm and Configuring Network Load Balancing on the Web Servers. Steve Smith Combined Knowledge MVP SharePoint Server

How To Fix A Bug In Drupal 8.Dev

QUESTIONS AND ANSWERS

Git - Working with Remote Repositories

Qlik Sense Enabling the New Enterprise

ENABLE LOGON/LOGOFF AUDITING

Elgg 1.8 Social Networking

Configuring CQ Security

Administrator s Guide

Top Navigation menu - Tabs. User Guide 1. &

Symfony vs. Integrating products when to use a framework

Pre-authentication XXE vulnerability in the Services Drupal module

Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Web Server (Step 2) Creates HTML page dynamically from record set

DocuShare User Guide

Bring your intranet to the IBM i With Drupal and Zend Server

Module Google Rich Snippets + Product Ratings and Reviews

Stellar Phoenix. SQL Database Repair 6.0. Installation Guide

Transcription:

Auditing Drupal sites for performance, content and optimal configuration! drupal.org/project/site_audit 2014.10.18 - Pacific NW Drupal Summit

Jon Peck Senior Engineer at Four Kitchens @FluxSauce - github.com/fluxsauce - drupal.org/u/fluxsauce

What is an audit? official inspection of accounts validate the good things you re doing highlight areas of improvement Electrical inspector in Public Safety Building, 1957 Item 54948, Engineering Department Photographic Negatives (Record Series 2613-07), Seattle Municipal Archives.

Why audit sites? Learn about contents and structure Ensure optimal configuration Discover areas of improvement

Every site is unique, but Built with the same framework Similar architectural requirements One size fits most Construction of a housing development in Newport Beach, California, 1974. Photo: National Geographic/Getty Images

Effective auditing Consistent Quantifiable Contextually aware Easy to understand Actionable recommendations

Static program analysis Performance & behavior gathering Does not execute Non-intrusive Automated Poltergeist (1982)

What is Site Audit? Drupal 7 site analyzer Installed on target platform Provides reports in multiple formats Powers Launch Check on Pantheon

Requirements Bootstrappable Drupal site Drush 5.10 or higher Shell access to target

Installation Not a module Place in Drush commands folder Within user profile for just yourself Within Drush installation folder http://forums.beyond.ca/showthread/t-188507-p-2.html

What does Site Audit check? Best Practices Block Cache Codebase Content Cron Database Extensions Google Insights Security System Status Users Views Watchdog

What doesn t Site Audit analyze? DOM / front-end performance Usability and site experience Aesthetics Content

Usage drush help - - filter=site_audit

drush audit_cache

drush ac --detail

HTML Output drush audit_best_practices --html --detail

JSON output drush audit_cron --json

Vendor support drush ae --vendor=acquia drush ae --vendor=pantheon

Audit All drush aa --skip=insights --html --bootstrap

Reports What and why.

Best Practices Drupal Fast 404 HTML pages Multisite - informational PHP Filter - should be disabled Settings and configuration - exists, not symbolic settings.php sites/all sites/default Unnecessary files in sites

Block Caching Cache Report

Cache Anonymous page caching Backends - list Bins - list any specified Default class Minimum cache lifetime - should be never expire Lock - display default locking mechanism Page Compression - should be on Expiration of cached pages - at least 15 minutes Aggregate and compress CSS, JS

Codebase Size of entire site on disk Size of public files Managed file size, count

Content Available content types and node counts Unused content types - consider removing Available vocabularies and term counts Unused vocabularies - consider removing

Database Collation - check if anything isn t UTF-8 Engine - checks if anything isn t using InnoDB Row count - reports tables with more than X rows Size in MB - including indexes and data

Security Extremely new! Scans menu_router for malicious callbacks More coming

Extensions (modules and themes) Count - 150 as arbitrary warning Dev - reports development modules, provider aware of dev env Disabled but not uninstalled Duplicate - checks for duplicates Missing - enabled, but code is missing Unrecommended - Short list of bad modules Version - specific problems in widely used modules

Status Drupal status report Highlights errors and problems

Users Who is #1, blocked? Count of all users Count of blocked users Role list, counts by role

Views Count enabled Caching rendered output Caching query results

Watchdog Number of 404s How old the logs are Count of entries PHP errors Syslog

Development Yes, it is extensible.

Structure Object-oriented, abstract classes Checks - individual checks; treat like unit tests Report - collection of checks, run in a specific order. Can abort.

Custom Checks and Reports Extend abstract SiteAuditReport, SiteAuditCheck Drush hooks Add callbacks Add to audit_all README.md

Hacked! integration https://www.drupal.org/node/2066371

Security Review integration https://www.drupal.org/node/2279283

Share your checks!

Drupal 8 version coming soon

Applied site_audit recommendations. Good configuration matters. https://drupal.org/project/site_audit @FluxSauce - github.com/fluxsauce - drupal.org/u/fluxsauce