Když web ve WordPressu nasazujeme z testovací verze do produkčního prostředí, máme seznam činností, na které nesmíme zapomenout:
- připravit novou databázi a hosting
- nastavit logy do zvláštní složky
- exportovat původní databázi a nahradit v SQL souboru testovací URL za nová
- nastavit wp-config.php:
- define('DB_NAME', 'xxx'); //nastavit připojení k produkční DB
- define('DB_USER', 'xxx');
- define('DB_PASSWORD', 'xxx');
- define('DB_HOST', 'localhost');
- define('DB_CHARSET', 'utf8'); //zkontrolovat znakovou sadu
- define('DB_COLLATE', 'utf8_czech_ci' ); //nasatvit české řazení
- define('AUTOSAVE_INTERVAL', 300 ); //nastavit autosave na vyšší hodnotu
- define('WP_POST_REVISIONS', false ); //vypnout revize, případně nastavit 2-5
- define('EMPTY_TRASH_DAYS', 14); //zapnout automatické vysypávání koše
- define('WP_HOME', 'http://xy'); //nastavit adresu webu napevno - ušetří se dotazy do databáze
- define('WP_SITEURL', 'http://xy');
- define('DISALLOW_FILE_EDIT', true ); //vypnout online editor šablon a pluginů
- provést aktualizaci
- vyčistit DB od revizí: DELETE FROM wp_posts WHERE post_type = "revision"
- vyčistit DB od transientních dat: DELETE FROM `wp_options` WHERE `option_name` LIKE ('%_transient_%')
- nastavit open_basedir a zkontrolovat disable_functions
- zkontrolovat Search Engine Visibility/Dostupnost pro vyhledávače (Nastavení - Zobrazování)
- zkontrolovat název a popis webu (Nastavení - Obecné)
- zkontrolovat nastavení komentářů (vypnout)
- zkontrolovat emailovou adresu
- odstranit nepotřebné uživatele a omezit zbývajícím práva
- odstranit nepotřebné šablony
- odstranit nepotřebné příspěvky (Hello world,...)
- odstranit nepotřebné pluginy
- zkontrolovat údaje v WP Contact Form 7
- instalovat WordPress Updates Notifier nebo IWP client
- instalovat a nakonfigurovat bezpečnostní plugin (iThemes security / AiO WP securtiy / Wordfence)
- změnit prefix db, pokud není v základu změněný
- blokovat neúspěšné loginy
- změna URL login page
- detekce změněných souborů
- zkontrolovat vhost WordPress profil (omezení přístupu k readme.html, xmlrpc.php a dalším signifikantním souborům, zákaz php v upload složce)
- vypnout zobrazení verze v generátorech - functions.php:
- function remove_wp_version() { return ; }
- add_filter('the_generator', 'remove_wp_version');
- nahrát opcode cache dropin (Xcache)
- nahrát a nakonfigurovat WP Super Cache
- zapnout production_mod (expires headers pro statické soubory, gzip, microcache u nginx)
- zkontrolovat přesměrování z www na non-www (nebo obráceně)
- pokud je to možné, tak vypnout WP-CRON a nastavit Cron na serveru:
- define('DISABLE_WP_CRON', 'true');
- 0 * * * * /usr/bin/wget -O /dev/null
/wp-cron.php?doing_wp_cron=1 > /dev/null 2>&1