Tutoriales y Manuales
Entradas Mensuales
-
►
2024
(Total:
1017
)
- ► septiembre (Total: 50 )
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
▼
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
▼
mayo
(Total:
90
)
- Documentos Word y Excel permiten ocultar malware s...
- Alcasec: el delicuente informático de 18 años más ...
- Introducción al fuzzing: Cómo buscar bugs de maner...
- Disponible CloneZilla 3.0
- El ayuntamiento de Barcelona estafado con 350.000 ...
- Accionistas de Twitter demandan a Elon Musk por hu...
- Mejores opciones para controlar el PC (Escritorio ...
- Broadcom adquirirá VMware por 61.000 millones de d...
- Expuestos los datos personales de 10 millones de R...
- Multa de 150M de dólares a Twitter por usar los da...
- Millones de niños españoles fueron espiados con we...
- Utilizan un video manipulado de Elon Musk para est...
- Nuevos fallos en Zoom podrían permitir que los usu...
- Secuestro populares paquetes PHP y Python
- Navegador DuckDuckGo permite los rastreadores de M...
- España aprueba inversión de 12.250 millones € en ...
- España está entre los países con mayor estafas de ...
- Los competidores de Pegasus de los que nadie habla...
- Ajustes de privacidad y seguridad en Telegram
- "Estamos en guerra y eso no es una exageración" af...
- Top 10 vectores de acceso iniciales utilizados par...
- Sitios web populares recogen todo lo que escribes ...
- Elegir el mejor router neutro
- Hackean Windows 11 y Teams en el concurso Pwn2Own ...
- Informe anual INCIBE 2021, incidencias más comunes...
- Encuentran malware en los drivers oficiales de un ...
- iPhone vulnerable a malware incluso cuando está ap...
- Estados Unidos acusa a un doctor venezolano de ser...
- España pone una multa récord a Google (10 millones...
- Elon Musk afirma que "al menos" el 20% de las cuen...
- Google mira tu localización y actividad online 426...
- Consiguen abrir y arrancar un Tesla Model 3 utiliz...
- Demandan a TikTok después que muera una niña de 10...
- SpaceX ofrecerá el servicio wifi Starlink en avion...
- Disponible nueva versión distro: Kali Linux 2022.2
- Logran hacer funcionar una CPU durante 1 año con a...
- BitTorrent: historia del p2p
- Confirman la vuelta del grupo de ransomware REVil
- Se cumplen 5 años del ataque de ransomware masivo ...
- Elon Musk pausa la compra de Twitter ante la gran ...
- Telefónica llega a un acuerdo con OneWeb para tene...
- Grupo Ruso Killnet declara la ciberguerra a España...
- La dura realidad laboral de TikTok, según sus empl...
- App simulará que vas con traje en una videollamada...
- Google anuncia el teléfono más económico: Pixel 6A
- Nerbian es un nuevo troyano RAT escrito en GO de p...
- ¿Qué está pasando con la caída de las criptomoneda...
- El ayuntamiento de Caldes de Montbui, afectado por...
- NVIDIA lanza un controlador de código abierto para...
- Hackean el Discord oficial de Opensea (mercado de ...
- Disponible TrueNAS 13.0: sistema operativo para NAS
- Apple se despide del iPod después de 20 años
- Fingen ser del servicio técnico de Canon para acce...
- Ocultan malware utilizando los registros (logs) de...
- Opciones de configuración del fichero wp-config.ph...
- Investigadores alertan peligrosidad Troyano Acceso...
- Phineas Fisher utilizó un proxy para hackear sindi...
- Vulnerabilidad crítica en WSO2 afecta a servicios ...
- China ordena sustituir equipos de marcas extranjer...
- Vulnerabilidad crítica en dispositivos F5 Big-IP
- Un juez desestima la demanda de Donald Trump contr...
- NVIDIA multada con 5,5 millones de dólares por ocu...
- China prohibirá usar PC y portátiles extranjeros e...
- Rusia robó tractores ucranianos pero John Deere se...
- ¿Cómo funcionaba la vulnerabilidad 0-click (sin ni...
- La red Tor mejora su mayor punto débil aumentando ...
- Apple, Google y Microsoft ofrecerán acceso a sus s...
- Creación de falsos positivos de Pegasus
- Candiru es la otra empresa de Israel que también e...
- Apple vende cable Thunderbolt 4 Pro de 3m por 179€
- Disponibles los primeros cables USB-C de 240W
- Samsung avanza móviles con 1 TB de almacenamiento ...
- Telefónica España lanza miMovistar, unas tarifas m...
- Mozilla presenta la versión 100 de su navegador we...
- Google presenta Privacy Sandbox para Android 13
- Disponible nueva versión de Tails: 5.0 (basada en...
- Vulnerabilidad en los chips M1 y A14 de Apple
- Corea del Norte y su Oficina 121, el ejército con ...
- Apple eliminará las aplicaciones que lleven 3 años...
- Distribuciones Linux basadas en la privacidad y la...
- Cuando el espionaje de Pegasus provoca también mue...
- El teléfono móvil del presidente de España también...
- Antivirus de rescate gratuitos para Windows
- Microsoft publica un informe sobre los destructivo...
- La Comisión Europea acusa a Apple de restringir el...
- Aprobado el RFC security.txt: nuevo standard comun...
- Uruguay detecta código malicioso en software utili...
- Costa Rica sufre ciberataques que paralizan aduana...
- Cliente criptomonedas de Cloudflare recibe un ataq...
- Apple ya ofrece piezas para reparar tu iPhone pero...
-
►
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
En el panorama en constante evolución de la seguridad de redes, OpnSense se ha convertido en una formidable solución de firewall. Nacido de...
-
Pese a que Gemini ofrece multitudes de opciones, recientemente, se ha dado a conocer una situación fuera de lo común. Hace unos días, un es...
Opciones de configuración del fichero wp-config.php de WordPress
Podemos hacer mucho dedicando unos minutos al archivo de configuración de WordPress (wp-config.php), algo a lo que muchos instaladores no prestan demasiada atención.
Tenemos a nuestra disposición una extensa guía desde la documentación oficial de WordPress en https://wordpress.org/support/article/editing-wp-config-php/, aunque vamos a intentar resumir las más interesantes.
Forzar al protocolo HTTPS
Con estas constantes podemos forzar tanto el login como el panel de administración de WordPress (/wp-admin) a usarlo exclusivamente bajo el protocolo HTTPS, por lo que es necesario que el servidor cuente con un certificado de seguridad SSL.
define('FORCE_SSL_LOGIN', true); define('FORCE_SSL_ADMIN', true);
NOTA: No lo actives si estás trabajando en modo local o en un servidor provisional sin certificado SSL.
Conexión con la base de datos
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' ); /** MySQL database username */ define( 'DB_USER', 'username_here' ); /** MySQL database password */ define( 'DB_PASSWORD', 'password_here' ); /** MySQL hostname */ define( 'DB_HOST', 'localhost' );
Cuando instalamos WordPress, lo primero que el instalador nos pregunta son los datos de la base de datos con la que vamos a trabajar. Pero si necesitamos modificar estos datos a posteriori, podemos localizarlos en el archivo wp-config.php en el apartado MySQL settings.
define( ‘DB_NAME’, ‘database_name’ ); Nombre de la base de datos en nuestro servidor.
define( ‘DB_USER’, ‘username’ ); Nombre de usuario de la base de datos.
define( ‘DB_PASSWORD’, ‘password’ ); Contraseña de la base de datos.
define( ‘DB_HOST’, ‘localhost’ ); Dirección del servidor de la base de datos. En muchos hosts suele ser «localhost», aunque en otros hostings como IONOS o Arsys, puede ser una dirección concreta.
Otras opciones en la base de datos
define ('DB_HOST', 'localhost: 3306' );
Especifica el puerto utilizado por el gestor de bases de datos. Por defecto se establece en 3306, pero si necesitas modificarlo, defínelo en esta constate.
$table_prefix = 'mistablas_'; // Only numbers, letters, and underscores please!
Establece el prefijo de las tablas de la base de datos de WordPress. Por defecto se utiliza wp_, pero para reforzar la seguridad, te aconsejo que lo cambies durante la instalación de tu WordPress.
No lo modifiques una vez instalado, o tendrás errores en WordPress al no conectar correctamente con las tablas. Cámbialo solo en los casos en que migres de base de datos y el prefijo de la nueva base de datos sea distinto.
define( 'DB_CHARSET', 'utf8' );
Establece el conjunto de caracteres de la base de datos. Por defecto, WordPress utilizará UTF-8.
define( 'DB_COLLATE', '' );
Establece el orden de clasificación del juego de caracteres. Por defecto se establece en blanco para que MySQL asigne automáticamente la colación en función del conjunto de caracteres definido con DB_CHARSET.
La colación general para UTF-8 suele ser ‘utf8_general_ci’:
define( 'DB_COLLATE', 'utf8_general_ci' );
Si necesitas definir una colación distinta para un país concreto, por ejemplo Turquía, establece:
define( 'DB_COLLATE', 'utf8_turkish_ci' );
Claves de seguridad
define( 'AUTH_KEY', 't`DK%X:>xy|eZ(BXb/f(Ur`8#~UzUQG-^_Cs_GHs5U-&Wb?pgn^p8(2@}IcnCa|' ); define( 'SECURE_AUTH_KEY', 'D&ovlU#|CvJ##uNq}bel+^MFtT&.b9{UvR]g%ixsXhGlRJ7q!h}XWdEC[BOKXssj' ); define( 'LOGGED_IN_KEY', 'MGKi8Br(&{H*~&0s;{k0<S(O:+f#WM+q|npJ-+P;RDKT:~jrmgj#/-,[hOBk!ry^' ) ; define( 'NONCE_KEY', 'FIsAsXJKL5ZlQo)iD-pt??eUbdc{_Cn<4!d~yqz))&B D?AwK%)+)F2aNwI|siOe' ); define( 'AUTH_SALT', '7T-!^i!0,w)L#JK@pc2{8XE[DenYI^BVf{L:jvF,hf}zBf883td6D;Vcy8,S)-&G' ); define( 'SECURE_AUTH_SALT', 'I6`V|mDZq21-J|ihb u^q0F }F_NUcy`l,=obGtq*p#Ybe4a31R,r=|n#=]@]c #' ); define( 'LOGGED_IN_SALT', 'w<$4c$Hmd%/*]`Oom>(hdXW|0M=X={we6;Mpvtg+Vo<$|#_}qG(GaVDEsn,~*4i' ); define( 'NONCE_SALT', 'a|#h{c5|P &xWs4IZ20c2&%4!c(/uG}W:mAvy<I44`jAbup]t=]V<`}.py(wTP%%' );
Se definen automáticamente durante la instalación. No es necesario que las copies ni mucho menos que las memorices, pero puedes cambiarlas si lo deseas. Solo asegúrate que sean largas y complicadas.
Normalmente son usadas para las cookies de sesión, de forma que si las modificas, los usuarios con sesión en tu web tendrán que volver a loguearse.
Establecer la URL del sitio
define( 'WP_SITEURL', 'https://misitioweb.com' );
Establece la URL WordPress. (No finalizes la URL con barra invertida «/», por ejemplo misitio.com/).
Por defecto, la URL del sitio se guarda en la tabla de opciones de la base de datos, pero si defines esta constante reducirás la cantidad de llamadas a la base de datos al cargar la web.
Establecer la URL del blog
define( 'WP_HOME', 'https://misitioweb.com/misitio' );
Define la dirección de WordPress en caso de que no se encuentre en el directorio principal de tu dominio. En la mayoría de casos será la misma dirección que la URL del sitio.
Mover los directorios por defecto
Otra opción que podemos definir en wp-config.php es la ubicación de los directorios como, WP-CONTENT, PLUGINS, THEMES, UPLOADS…
Moviendo el directorio WP-CONTENT
Definiendo el PATH LOCAL:
define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/blog/wp-content' );
Definiendo la URL:
define( 'WP_CONTENT_URL', 'http://example/blog/wp-content' );
Moviendo el directorio PLUGINS
Definiendo el PATH LOCAL:
define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/blog/wp-content/plugins' );
Definiendo la URL:
define( 'WP_PLUGIN_URL', 'http://example/blog/wp-content/plugins' );
Moviendo el directorio THEMES
$theme_root = WP_CONTENT_DIR . '/themes';
Moviendo el directorio UPLOADS
define( 'UPLOADS', 'blog/wp-content/uploads' );
Caché de objetos y compresión
define( 'WP_CACHE', true ); define( 'WP_CACHE_KEY_SALT', 'bli6w8w9zrqufbfz79:' ); define( 'COMPRESS_CSS', true ); define( 'COMPRESS_SCRIPTS', true ); define( 'ENFORCE_GZIP', true );
WP_CACHE habilita la caché de objetos. Normalmente la utilizan los plugins de gestión de caché.
WP_CACHE_KEY_SALT, define la clave de caché. Puedes poner una aleatoria.
COMPRESS_CSS Y COMPRESS_SCRIPT, comprimen los objetos de estilos y javascript.
ENFORCE_GZIP, fuerza la entrega de la caché comprimida. Esta función tiene que estar habilitada en el servidor.
Limitar las revisiones de posts
define( 'WP_POST_REVISIONS', 5 );
Si editas mucho tu contenido, debes saber que cada vez que actualizas una entrada, página, producto… se guarda una revisión de esta, para que puedas volver a ella en cualquier momento. Esto hace que nuestra base de datos pueda crecer enormemente. Personalmente me he encontrado con páginas que tenían más de 500 revisiones guardadas.
Creo que limitar a 5 es más que suficiente, incluso se puede desactivar por completo, indicando el parámetro false:
define( 'WP_POST_REVISIONS', false );
Guardado automático
define( 'AUTOSAVE_INTERVAL', 30 );
Por defecto, WordPress realiza autoguardados de tus publicaciones cada 60 segundos. Puedes cambiar este valor con esta definición.
Permanencia en la papelera
define( 'EMPTY_TRASH_DAYS', 7 );
Cuando enviamos contenido a la papelera, esta permanece ahí durante 30 días por defecto. Podemos cambiar este valor por otro número de días.
Habilitar WordPress Multisitio
define( 'WP_ALLOW_MULTISITE', true );
Si deseas habilitar varias instalaciones de WordPress en un mismo sitio (WordPress multisitio), establece en TRUE esta consante.
Redirección Blogs inexistentes
define( 'NOBLOGREDIRECT', 'https://misitio.com' );
Redirige a tu sitio principal en caso de que alguiente intente acceder a un subdominio o subdirectorio inexistente.
WP_DISABLE_FATAL_ERROR_HANDLER
Antes de la versión 5.2 de WordPress, si un theme o complemento causaba un error fatal, el usuario solo veía una pantalla en blanco. A partir de WordPress 5.2, se muestra un mensaje error del estilo:
«El sitio está experimentando dificultades técnicas. Consulte la bandeja de entrada de correo electrónico del administrador de su sitio para obtener instrucciones».
Pero en un entorno de desarrollo, seguramente necesitamos visualizar esos errores de PHP y para ello debemos ocultar este mensaje por defecto, además de habilitar el WP_DEBUG y WP_DEBUG_DISPLAY
define( 'WP_DISABLE_FATAL_ERROR_HANDLER', true ); // 5.2 and later define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true );
WP_DEBUG informa de errores y advertencias en temas y plugins, además de errores en la base de datos.
Aumentar la memoria asignada a PHP
Por defecto, la memoria PHP asignada en WordPress es de solo 40MB. Es conveniente aumentar esta cantidad sobre todo si utilizamos un número considerable de plugins o editamos la web con builders como Elementor, Divi, Fusion, etc.
Existen dos límites de memoria, el que tiene que ver con el frontend o web visible y el que tiene que ver con el panel de administración de WordPress.
Aumentar el límite de memoria en el frontend:
define( 'WP_MEMORY_LIMIT', '128M' );
Aumentar el límite de memoria en el panel administrador:
define( 'WP_MAX_MEMORY_LIMIT', '256M' );
Evitar que WordPress pida los datos FTP al instalar o actualizar complementos
Esta configuración suele estar habilitada por defecto en la mayoría de hostings, pero si WordPress te pide los datos de autenticación FTP cada vez que intentas actualizar o instalar un complemento define la siguiente constante:
define( 'FS_METHOD', 'direct' );
Habilitar un cron alternativo
Si por cualquier razón el cron por defecto de WordPress no realiza correctamente las tareas asignadas y quieres establecer un Cron alternativo, debes especificarlo con la siguiente constante:
define( 'ALTERNATE_WP_CRON', true );
Deshabilitar cron
También es posible que quieras deshabilitar el cron si no vas a hacer uso de él (programar publicaciones, programar backups, etc.):
define( 'DISABLE_WP_CRON', true );
Limitar los intervalos de cron
Establece el tiempo (en segundos) que deben transcurrir entre la ejecución de un cron y otro.
define( 'WP_CRON_LOCK_TIMEOUT', 60 );
Reparar automáticamente la base de datos
Si tienes problemas con tu base de datos y no puedes iniciar sesión, puedes definir esta constante para forzar una reparación automática.
define( 'WP_ALLOW_REPAIR', true );
Después accede a ruta: https://misitio.com/wp-admin/maint/repair.php
No es necesario iniciar sesión para ejecutar el proceso. Una vez resuelto el problema, borra esta consante o cámbiala a false.
Desactivar el editor interno de themes y plugins
Una medida sencilla de mejorar la seguridad en nuestro WordPress es desactivando el editor interno de plugins y temas. De esta forma, si alguien se hace con nuestro usuario administrador, no podrá editar plantillas y plugin insertando código malicioso. (Para ello tendrá que tener también acceso al FTP y modificar los archivos insitu).
define( 'DISALLOW_FILE_EDIT', true );
Desactivar las actualizaciones automáticas de WordPress
Es conveniente no actualizar a la ligera un WordPress, sobre todo si es una versión media o mayor. Debemos asegurar antes de que tanto el theme como los complementos (plugins) tienen 100% compatibilidad con la nueva versión.
Para impedir que WordPress se actualice automáticamente usa la constante:
define( 'WP_AUTO_UPDATE_CORE', false );
Pero sí es buena idea actualizar únicamente las versiones de seguridad y mantenimiento, para ello usamos la constante:
define( 'AUTOMATIC_UPDATER_DISABLED', false ); define( 'WP_AUTO_UPDATE_CORE', 'minor' ); define( 'CORE_UPGRADE_SKIP_NEW_BUNDLED', true );
La última constante ‘CORE_UPGRADE_SKIP_NEW_BUNDLED’, evitará que las actualizaciones de WordPress editen el directorio wp-content, evitando que se instalen los nuevos temas por defecto que incroporen las nuevas versiones.
Desactiva toda actualización automática y manual
Si quieres llevar un control o mantenimiento exhaustivo de un proyecto, puedes impedir que se instalen o actualicen complementos con la constante:
define( 'DISALLOW_FILE_MODS', true );
Ni siquiera un usuario administrador podrá instalar o actualizar nada.
Fuentes:
https://www.gestionatuweb.net/optimizar-el-archivo-de-configuracion-de-wordpress-wp-config-php/
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.