<?php
/**
* ════════════════════════════════════════════════════════════
*
* ██╗ ██╗██████╗ ████████╗███████╗
* ██║ ██║██╔══██╗╚══██╔══╝██╔════╝
* ██║ █╗ ██║██████╔╝ ██║ ███████╗
* ██║███╗██║██╔═══╝ ██║ ╚════██║
* ╚███╔███╔╝██║ ██║ ███████║
* ╚══╝╚══╝ ╚═╝ ╚═╝ ╚══════╝
*
* WordPress configuratie • hardened template
*
* ════════════════════════════════════════════════════════════
*
* Site : [vul je domein in]
* Toegepast op : [datum]
*
* Template : WPTS — Website Technical Support
* Bron : https://wpts.nl/wp-config-php-beveiligen
*
* Hulp nodig bij hardening of een complete security-audit?
* Daniel Mulder • info@wpts.nl • 06 12 29 47 06
*
* © WPTS.nl • vrije te gebruiken & aan te passen
*
* ════════════════════════════════════════════════════════════
*/
// ============================================================
// DATABASE
// ============================================================
define( 'DB_NAME', 'jouw_database_naam' );
define( 'DB_USER', 'jouw_db_user' ); // beperkte rechten!
define( 'DB_PASSWORD', 'sterk-uniek-wachtwoord' ); // min. 24 karakters
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );
// ============================================================
// AUTHENTICATION KEYS & SALTS
// Genereer verse keys: api.wordpress.org/secret-key/1.1/salt/
// Roteer minstens jaarlijks én na elke inbraak
// ============================================================
define( 'AUTH_KEY', '...vul met verse random string...' );
define( 'SECURE_AUTH_KEY', '...vul met verse random string...' );
define( 'LOGGED_IN_KEY', '...vul met verse random string...' );
define( 'NONCE_KEY', '...vul met verse random string...' );
define( 'AUTH_SALT', '...vul met verse random string...' );
define( 'SECURE_AUTH_SALT', '...vul met verse random string...' );
define( 'LOGGED_IN_SALT', '...vul met verse random string...' );
define( 'NONCE_SALT', '...vul met verse random string...' );
// ============================================================
// TABLE PREFIX — niet wp_, maakt SQL-injection moeilijker
// ============================================================
$table_prefix = 'xyz_';
// ============================================================
// CORE HARDENING
// ============================================================
// Schakelt PHP-editor in /wp-admin uit (Editor onder Weergave + Plugins)
define( 'DISALLOW_FILE_EDIT', true );
// Verbiedt plugin/theme installatie via dashboard
// (Vergeet niet auto-updates extern in te richten als je deze aanzet)
define( 'DISALLOW_FILE_MODS', true );
// Forceer HTTPS in admin
define( 'FORCE_SSL_ADMIN', true );
// Cookies alleen via HTTPS + niet leesbaar via JS
@ini_set( 'session.cookie_secure', 1 );
@ini_set( 'session.cookie_httponly', 1 );
// ============================================================
// DEBUG — in productie naar log, NIET naar browser
// ============================================================
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
// ============================================================
// AUTO-UPDATES
// ============================================================
// minor + security automatisch, major handmatig
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
// ============================================================
// EXTERNAL HTTP — alleen vertrouwde hosts
// ============================================================
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
define( 'WP_ACCESSIBLE_HOSTS',
'api.wordpress.org,*.wordpress.org,' .
'downloads.wordpress.org,api.example-payment-provider.com'
);
// ============================================================
// WP-CRON via externe trigger (zie hosting cron-jobs)
// ============================================================
define( 'DISABLE_WP_CRON', true );
// ============================================================
// PERFORMANCE / HYGIENE
// ============================================================
define( 'WP_POST_REVISIONS', 5 ); // niet onbeperkt revisions
define( 'EMPTY_TRASH_DAYS', 7 ); // auto-cleanup
define( 'AUTOSAVE_INTERVAL', 300 ); // 5 minuten i.p.v. 60sec
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
// ============================================================
// MULTISITE (alleen als van toepassing)
// ============================================================
// define( 'WP_ALLOW_MULTISITE', true );
// define( 'MULTISITE', true );
// ============================================================
// ABSPATH — nooit aanpassen
// ============================================================
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
require_once ABSPATH . 'wp-settings.php';
// ════════════════════════════════════════════════════════════
// Geharded met de WPTS hardening-template
// https://wpts.nl/wp-config-php-beveiligen
// ════════════════════════════════════════════════════════════