Antunez Plaza

Espacio para compartir esa reflexión

Autor: maantunez

  • Editar permisos http user

    Editar permisos http user

    Cuando se instala WP y al activar algún plugin el sistema deja de responder. Con las opciones de depuración activadas, se puede confirmar error en el acceso por FTP al sistema de archivos.

    Acceder vía SSH al servidor

    Deja toda la instalación con:

    sudo chown -R http:http /volume1/web/wp02
    sudo chmod -R 775 /volume1/web/wp02

    (Así WordPress funciona perfecto.)

    Entonces si intento editar algún archivo desde el bloc de notas del NAS (usuario del NAS) me puede dar algún error por lo que se puede incluir los permisos:


    Sólo para wp-config.php, cambia el propietario al del NAS:

    sudo chown nasuser:http /volume1/web/wp02/wp-config.php
    sudo chmod 664 /volume1/web/wp02/wp-config.php
  • Alojar WordPress en tu NAS Synology: así lo hice yo

    Alojar WordPress en tu NAS Synology: así lo hice yo

    ¿Alguna vez has pensado en alojar tu propio sitio WordPress directamente desde la red de tu casa usando tu NAS Synology? ¡Es totalmente posible! Te da control total y, sinceramente, es un proyecto bastante interesante. Yo mismo he pasado por el proceso, y aquí dejo una guía para mi propia referencia futura y para poder ayudar a configurarlo a cualquiera que lo necesite.

    Cuando tengo ya un sitio funcionando y quiero incluir otro, aparte del tema de la compra y configuración del dominio del paso 2, el resto es seguir el manual a partir del paso 5.

    (Opcional: «Si prefieres una guía visual, el vídeo en inglés Tutorial Vídeo que utilicé también cubre estos pasos.»)

    Antes de Empezar: Prerrequisitos

    Hay algunas cosas que necesitarás tener listas antes de comenzar:

    1. Un Nombre de Dominio: Necesitas una dirección web (como tublog.com). Puedes conseguir uno de registradores que hay en internet. Aunque yo lo hice con Google Domains, se trata de un servicio que ya no ofrecen así que toca buscar otros y, aunque hay muchos como Namecheap, etc mi consejo es busca el que quieras que te permita configurar lo básico y que te de una buena oferta, pero después de que pase el tiempo de oferta, mueve el dominio a CLOUDFLARE, son líderes mundiales en control de tráfico web y el nivel de gestión que te ofrecen está en otra liga. El precio, una vez pasadas ofertas de primer año, como todos más o menos.
    2. Acceso al Router y Redirección de Puertos (Port Forwarding): Necesitarás acceso a la configuración de tu router doméstico para abrir puertos específicos (80 y 443) y dirigirlos a la dirección IP interna de tu NAS.
    3. No tener CGNAT: Comprueba con tu Proveedor de Servicios de Internet (ISP) que tienes una dirección IP pública. Si estás detrás de Carrier-Grade NAT (CGNAT), el acceso externo podría ser complicado o imposible sin pasos adicionales (como un túnel VPN).
    4. Considera tus Necesidades: Para blogs personales, experimentos o sitios con poco tráfico, un NAS es genial. Para sitios profesionales, de alto tráfico o críticos para un negocio, o con plugins que requieran cantidad de proceso o gestiones grandes de bases de datos, un hosting dedicado (como AWS, SiteGround, etc.) podría ser más robusto y fiable.

    Paso 1: Configurando el DNS Dinámico (DDNS)

    La dirección IP de tu conexión a internet doméstica probablemente cambia periódicamente (es dinámica). El DDNS asegura que tu nombre de dominio siempre apunte a tu NAS, incluso cuando la IP cambie.

    • Inicia sesión en tu DSM (DiskStation Manager) de Synology.
    • Ve a Panel de control > Acceso externo > DDNS.
    • Haz clic en Añadir y elige un proveedor de DDNS (Synology ofrece uno gratuito, o puedes usar otros).
    • Sigue las indicaciones para configurar tu nombre de host DDNS (por ejemplo, tunas.synology.me). Este nombre de host rastreará ahora tu IP doméstica.

    Paso 2: Apuntando tu Nombre de Dominio (Registros DNS)

    Ahora, vamos a decirle a tu nombre de dominio (ej. tublog.com) que apunte a tu NAS Synology usando el nombre de host DDNS que acabas de crear. Este ejemplo usa Google Domains, pero el principio es similar en otros registradores.

    • Inicia sesión en tu registrador de dominios (ej. Google Domains).
    • Busca la sección de gestión de DNS para tu dominio.
    • Crea un registro CNAME:
      • Nombre/Host: Es el prefijo que quieres (ej. www para www.tublog.com, o quizás blog para blog.tublog.com. Si quieres que sea el dominio principal, a veces se usa @ o se deja en blanco, pero revisa la documentación de tu registrador. Para subdominios como wp02.antunezplaza.com, introducirías wp02).
      • Tipo: CNAME
      • Valor/Apunta a: Introduce el nombre de host DDNS completo que creaste en el Paso 1 (ej. tunas.synology.me).
    • (Opcional pero Recomendado): Quizás quieras configurar también el reenvío de dominio para que si alguien escribe tublog.com (sin www), sea redirigido a www.tublog.com.
    Captura de pantalla de la configuración del registro CNAME en el DNS

    Paso 3: Abriendo las Puertas (Redirección de Puertos – Port Forwarding)

    El tráfico web necesita una forma de entrar en tu red para llegar al NAS.

    • Inicia sesión en la interfaz de administración de tu router (normalmente algo como 192.168.1.1 o 192.168.0.1).
    • Busca la sección Port Forwarding o Servidor Virtual.
    • Crea dos reglas:
      1. Regla 1: Redirige el puerto externo 80 (HTTP) al puerto interno 80 en la dirección IP interna de tu NAS (ej. 192.168.1.100).
      2. Regla 2: Redirige el puerto externo 443 (HTTPS/SSL) al puerto interno 443 en la dirección IP interna de tu NAS.
    • Asegúrate de saber la dirección IP interna de tu NAS (puedes encontrarla en DSM en Panel de control > Red > Interfaz de red). Es mejor asignar una IP interna estática a tu NAS a través de la configuración de reserva DHCP de tu router para que no cambie.

    Paso 4: Instalando el Software del Servidor Web en Synology

    Tu NAS necesita el software adecuado para servir páginas web y ejecutar WordPress.

    • Ve al Centro de paquetes en DSM.
    • Instala los siguientes paquetes:
      • Web Station: El gestor principal del servidor web.
      • Apache HTTP Server 2.4 (o tu versión preferida de Apache): El software del servidor web en sí.
      • MariaDB 10: La base de datos donde WordPress almacenará su contenido. Durante la instalación, establece una contraseña fuerte para el usuario ‘root’ de la base de datos – ¡no la olvides!
      • PHP 7.4 (o una versión compatible más reciente como 7.8, 8.0, 8.1, etc. – comprueba los requisitos de WordPress): El lenguaje de scripting en el que corre WordPress. Ten en cuenta que hay una configuración concreta para PHP y que no es conveniente activar lo que no necesite WordPress si quieres tener el mejor rendimiento posible.
      • phpMyAdmin: Una herramienta basada en web para gestionar fácilmente tus bases de datos MariaDB.

    Paso 5: Preparando WordPress

    • Ve al sitio web oficial WordPress.org y descarga el último paquete .zip.
    • Abre File Station en tu NAS Synology.
    • Navega a la carpeta compartida web por defecto.
    • Crea una nueva subcarpeta dentro de web para tu sitio web (ej. miwpblog).
    • Sube el archivo .zip de WordPress que descargaste a esta nueva carpeta (web/miwpblog).
    • Haz clic derecho en el archivo .zip en File Station y elige Extraer > Extraer aquí para descomprimir los archivos de WordPress directamente en la carpeta web/miwpblog.

    Paso 6: Creando la Base de Datos y el Usuario para WordPress

    WordPress necesita su propio espacio dedicado (base de datos) y una cuenta de usuario para acceder a ella.

    • Abre phpMyAdmin desde el menú principal de DSM.
    • Inicia sesión usando:
      • Nombre de usuario: root
      • Contraseña: La contraseña root de MariaDB que estableciste durante la instalación (Paso 4).
    • Crear la Base de Datos:
      • Haz clic en la pestaña Bases de datos.
      • Introduce un nombre para tu base de datos (ej. wp01_db) bajo «Crear base de datos».
      • Elige una colación como utf8mb4_general_ci.
      • Haz clic en Crear.
    • Crear el Usuario de la Base de Datos:
      • Haz clic en la pestaña Cuentas de usuario.
      • Haz clic en Agregar cuenta de usuario.
      • Nombre de usuario: Elige un nombre de usuario (ej. wp01_user). Evita usar ‘admin’ o nombres simples.
      • Nombre del host: Selecciona Local del desplegable (esto se resuelve a localhost).
      • Contraseña: Genera o introduce una contraseña muy fuerte. ¡Guarda esta contraseña de forma segura!
      • Asegúrate de que «Otorgar todos los privilegios en la base de datos *» NO esté marcado todavía, y que «Crear base de datos con el mismo nombre…» tampoco esté marcado.
      • Haz clic en Continuar (normalmente abajo a la derecha).
    Pantalla de phpMyAdmin – Añadir cuenta de usuario
    • Otorgar Privilegios:
      • Deberías estar de vuelta en la pantalla de Cuentas de usuario. Encuentra el usuario que acabas de crear (wp01_user @ localhost).
      • Haz clic en Editar privilegios para ese usuario.
      • Ve a la pestaña Base de datos dentro de la pantalla de privilegios.
      • Bajo «Agregar privilegios en la siguiente base de datos», selecciona la base de datos que creaste antes (wp01_db).
      • Haz clic en Continuar.
      • En la siguiente página («Privilegios específicos de la base de datos»), haz clic en Marcar todos para dar al usuario control total solo sobre esa base de datos específica.
      • Haz clic en Continuar.
    Pantalla de phpMyAdmin – Privilegios específicos de la base de datos

    Paso 7: Configurando Web Station y PHP

    Ahora le decimos a Web Station sobre tu nuevo sitio y nos aseguramos de que PHP esté configurado correctamente.

    • (Limpieza Opcional): Si hay un archivo index.html directamente dentro de la carpeta principal /web de tu NAS, considera renombrarlo o eliminarlo, especialmente si planeas configuraciones multi-sitio más adelante, para evitar conflictos.
    • Abre Web Station en DSM.
    • Configurar PHP:
      • Ve a Configuración de lenguaje de script > PHP.
      • Selecciona tu perfil PHP deseado (ej. Perfil Predeterminado 7.4) y haz clic en Editar, o haz clic en Crear para hacer un nuevo perfil específicamente para WordPress.
      • Dale un nombre/descripción si estás creando uno nuevo.
      • Ve a la pestaña Extensiones.
      • Busca y marca (habilita) todas las extensiones PHP requeridas por WordPress. Puedes encontrar la lista actual en la página oficial de requisitos de hosting de WordPress: Requisitos del Entorno del Servidor WordPress. Asegúrate de que las comunes como mysqli, curl, gd, imagick, openssl, mbstring, zip, etc., estén habilitadas.
      • Haz clic en Guardar.
    • Crear el Host Virtual:
      • Ve a Portal de servicios web.
      • Haz clic en Crear > Portal de servicio basado en nombre (Host virtual).
      • Rellena los detalles:
        • Nombre de host: Introduce el dominio/subdominio completo que configuraste en el Paso 2 (ej. wp02.antunezplaza.com).
        • Puertos: Deja marcados 80/443.
        • Raíz del documento: Haz clic en Examinar y selecciona la carpeta donde extrajiste WordPress (ej. /web/miwpblog).
        • Servidor back-end HTTP: Selecciona Apache 2.4.
        • PHP: Selecciona el perfil PHP que configuraste/editaste arriba (ej. PHP 7.4).
        • Haz clic en Guardar.

    Captura de pantalla de la configuración del Host Virtual en Web Station

    Paso 8: Estableciendo Permisos de Archivo

    WordPress necesita permiso para escribir archivos (para subidas, instalaciones de plugins/temas, actualizaciones).

    • Abre File Station.
    • Navega a la carpeta principal web.
    • Haz clic derecho en la carpeta de tu sitio WordPress (ej. miwpblog).
    • Selecciona Propiedades.
    • Ve a la pestaña Permiso.
    • Haz clic en Crear.
    • En el desplegable Usuario o grupo, busca y selecciona HTTP. (A veces puede aparecer como usuario interno SYSTEM o similar – necesitas el usuario del servidor web).
    • En la sección Permisos de abajo, marca la casilla Escritura (Lectura ya debería estar marcada).
    • Haz clic en OK.
    • Importante: Marca la casilla «Aplicar a esta carpeta, subcarpetas y archivos».
    • Haz clic en Guardar u OK.

    Captura de pantalla de la configuración de Permisos en File Station

    Paso 9: Ejecutando la Instalación de WordPress

    ¡Llegó el momento!

    • Abre tu navegador web y navega al dominio/subdominio que configuraste (ej. http://wp02.antunezplaza.com).
    • Deberías ver la pantalla de selección de idioma de WordPress. Elige tu idioma.
    • En la siguiente pantalla («Bienvenido a WordPress…»), haz clic en ¡Vamos a ello!.
    • Rellena los detalles de conexión a la base de datos que creaste en el Paso 6:
      • Nombre de la base de datos: wp01_db (o como la hayas llamado)
      • Nombre de usuario: wp01_user (o como lo hayas llamado)
      • Contraseña: La contraseña fuerte que creaste para el usuario de la base de datos.
      • Host de la base de datos: localhost (o a veces 127.0.0.1:3307 si MariaDB usa un puerto no estándar – revisa la configuración de tu paquete MariaDB si localhost falla).
      • Prefijo de tabla: wp_ (puedes cambiar esto para una seguridad ligeramente mayor, pero wp_ es el estándar).
    • Haz clic en Enviar. Si los detalles son correctos, verás un mensaje de éxito.
    • Haz clic en Ejecutar la instalación.
    • Rellena el Título del sitio, Nombre de usuario de administrador, Contraseña de administrador (¡usa una fuerte!), y tu dirección de Correo electrónico de administrador.
    • Haz clic en Instalar WordPress.
    Captura de pantalla de la conexión a la base de datos de WordPress

    Paso 10: Asegurando tu Sitio con HTTPS (Certificado SSL)

    ¡No te saltes esto! HTTPS cifra el tráfico y genera confianza.

    • En DSM, ve a Panel de control > Seguridad > Certificado.
    • Haz clic en Añadir > Añadir un nuevo certificado.
    • Elige Obtener un certificado de Let's Encrypt.
    • Introduce tu Nombre de dominio (ej. wp02.antunezplaza.com).
    • Introduce tu Correo electrónico (para avisos de renovación).
    • (Opcional) Puedes añadir otros nombres bajo Nombre alternativo del sujeto si es necesario (ej. www.wp02.antunezplaza.com si planeas usarlo también).
    • Haz clic en Aplicar o Siguiente. Tu NAS se comunicará con Let’s Encrypt para verificar la propiedad (esto requiere que los puertos 80/443 estén abiertos y apuntando correctamente).
    • Una vez conseguido, necesitas asignar este certificado. Haz clic en Configurar (o busca la entrada de tu dominio en la lista y haz clic en Configurar).
    • Encuentra el servicio correspondiente a tu Host Virtual (debería coincidir con el nombre de host, ej. wp02.antunezplaza.com).
    • En el desplegable junto a él, selecciona el nuevo certificado de Let’s Encrypt que acabas de crear.
    • Haz clic en OK.

    Ahora, intenta acceder a tu sitio usando https://wp02.antunezplaza.com. ¡Deberías ver un icono de candado! Quizás quieras también instalar un plugin dentro de WordPress (como «Really Simple SSL») para manejar la redirección del tráfico HTTP a HTTPS automáticamente.

    Solución de Problemas: ¿Pide Credenciales FTP?

    A veces, al intentar instalar plugins o temas, WordPress podría pedir detalles de conexión FTP. Esto suele ocurrir por problemas de propiedad/permisos de archivos. Si te encuentras con esto, la guía que enlazo a continuación suele ayudar:

    Esencialmente, a menudo implica añadir una línea como define('FS_METHOD', 'direct'); a tu archivo wp-config.php (ubicado en tu carpeta WordPress, ej. /web/miwpblog/wp-config.php). ¡Edita este archivo con cuidado!


    ¡Y eso es todo! Ahora deberías tener una instalación de WordPress funcionando en tu NAS Synology. Puede parecer un montón de pasos, pero abordarlo etapa por etapa lo hace manejable. ¡Diviértete construyendo tu sitio! Déjame saber en los comentarios si te encontraste con algún problema.

  • ¿Código Acumulado? Cómo Vencer la Procrastinación si Estudias Informática

    ¿Código Acumulado? Cómo Vencer la Procrastinación si Estudias Informática


    ¡Hola! Enhorabuena por empezar Ingeniería Informática. Es una carrera apasionante, llena de retos intelectuales, tecnología punta y… seamos sinceros, también de momentos de querer tirar el teclado por la ventana.

    Si estás en primer año, te enfrentas a un salto importante: Cálculo, Álgebra, Fundamentos de Programación, Física… la carga es intensa. Y en medio de todo eso, seguro que te has encontrado con esa voz que te dice: «Bueno, esta práctica la empiezo mañana», «Primero reviso Stack Overflow un momento» o «Necesito compilar este proyecto personal antes de ponerme con lo de clase». Sí, hablamos de la procrastinación.

    ¿Qué es exactamente procrastinar en tu contexto? No es vagueza, ¡probablemente trabajas un montón! Es aplazar esa práctica de programación que parece un monstruo, posponer el estudio para el examen de Álgebra, dejar para «luego» el depurar esa función que no hay manera que compile, o incluso evitar empezar el tema que te asusta porque prefieres dedicar el tiempo a otra cosa de la que te autoconvences que es más importante.

    Es sustituir esas tareas cruciales, aunque a veces áridas o intimidantes, por otras que te resultan más gratificantes o sencillas en el momento (¡hola, Instagram, YouTube o ese videojuego!), sabiendo que la fecha de entrega o de exámenes se acerca peligrosamente.

    En Ingeniería Informática, te enfrentas a problemas complejos que requieren concentración y a menudo te puedes quedar «atascado». Ese sentimiento de bloqueo es un caldo de cultivo perfecto para la procrastinación.

    La libertad de la universidad, sin horarios tan rígidos como en bachillerato, te da la cuerda… a veces, para ahorcarte tú solo con los plazos.

    ¿Y cuáles son las consecuencias específicas en tu carrera? Van más allá de la nota.

    1. Académicas: Entregar código a última hora suele implicar soluciones poco eficientes, bugs escondidos, no pasar los tests, o directamente no llegar a una comprensión real de lo que has estudiado. Suspender asignaturas clave como Álgebra o Programación te puede retrasar mucho. No asentar bien las bases ahora te pasará factura en asignaturas más avanzadas que dependen de ellas (¡y mucho!).
    2. Estrés y ansiedad: La presión de tener que entregar una práctica compleja en pocas horas, enfrentarte a un IDE lleno de errores la noche antes, o ir a un examen sabiendo que no dominas la materia… genera un nivel de estrés altísimo y muy característico de esta área. La sensación de «no llego» es agotadora.
    3. Salud (física y mental): Las «noches en vela» a base de cafeína para terminar algo o pensando en que no te da tiempo pasan factura. Malos hábitos de sueño, alimentación descuidada, dolores de cabeza, espalda (¡hola, silla!)… Y el desgaste mental de luchar contra problemas complejos bajo presión puede llevar al temido burnout.
    4. Pérdida de aprendizaje y oportunidades: Al ir siempre con prisas, no tienes tiempo de entender realmente los conceptos, de experimentar o de profundizar y de por supuesto, los importantes repasos de lo ya estudiado. Te pierdes la satisfacción de resolver bien un problema complejo. Además, estás tan ocupado «apagando fuegos» que no puedes unirte a ese grupo de programación, ir a un taller interesante o desarrollar ese proyecto personal que te motiva.

    ¡Pero tranquilo/a! Esto tiene solución. No eres el único/a al que le pasa y, lo más importante, es un hábito modificable. Aquí van estrategias adaptadas a tu día a día como futuro ingeniero/a informático/a:

    1. Debuggea tu procrastinación: ¿Cuándo ocurre? ¿Con las prácticas largas? ¿Al estudiar teoría densa? ¿Cuando un tema te frustra? Identifica tus triggers. Entender por qué pospones algo es el primer paso para implementar una solución.
    2. Descompón el problema (Divide y Vencerás Algorítmico): Una práctica enorme asusta. Divídela: 1. Entender bien el enunciado. 2. Diseñar la estructura de datos/algoritmo (¡aunque sea en papel!). 3. Implementar el módulo A. 4. Implementar el módulo B. 5. Crear casos de prueba. 6. Depurar. 7. Documentar. Tachar cada subtarea da un subidón. Lo mismo con cualquier tema de estudio, no te sientes sin verlo en perspectiva y dividirlo en secciones de estudio que puedas ponerte como objetivos (pomodoros)
    3. La regla de los 5 minutos (o del «Commit Inicial»): ¿Pereza máxima para empezar a picar código o ver un tema? Oblígate a abrir el IDE, crear la estructura básica del proyecto, escribir la función main vacía o resolver el primer apartado de ese problema de física. Solo 5 minutos. Romper la inercia inicial es clave. A menudo, una vez ya estás sentado y arrancas, sigues ya que seguir en más fácil que ponerse.
    4. Planifica y gestiona tus procesos: Usa Google Calendar, el calendario de tu iPhone.. lo que sea, ¡pero úsalo! Bloquea tiempos: «Lunes 16-18h: Depurar Práctica 1», «Martes 10-12h: Estudiar Cálculo Tema 4». Sé realista. La Técnica Pomodoro (25~50 minutos de foco intenso, 5~10 de descanso) es genial para tareas de programación o estudio denso.
    5. Minimiza las interrupciones (Control de Hilos): Cuando te pongas a trabajar en serio: móvil en silencio y lejos, cierra pestañas no relacionadas (¡sí, también la de ese foro!), cierra Instagram/WhatsApp, todo lo que no es para la tarea, usa extensiones de navegador si caes fácil en webs concretas. Busca tu «cueva» de concentración (biblioteca, sala de estudio…).
    6. Define tus propios Milestones (Hitos): No pienses solo en la fecha final de entrega. Ponte hitos intermedios realistas: «Tener el módulo de lectura de datos para el miércoles», «Entender el capítulo 3 de Álgebra para el viernes».
    7. Recompénsate (Feedback Positivo): ¿Terminaste una sesión de estudio infernal? ¿Entregaste una práctica? Prémiate: haz deporte, mira un episodio, dedica un rato a eso personal y divertido, sal a la sala de descanso con los compañeros. Refuerza positivamente el esfuerzo.
    8. Hecho es mejor que perfecto (Principio MVP): El perfeccionismo paraliza mucho en ingeniería. No te obsesiones con el código más elegante o el algoritmo óptimo en la primera versión. Saca una solución que funcione (un Minimum Viable Product), que cumpla los requisitos mínimos. Luego, si hay tiempo, revisa y optimiza. ¡Pero entrega algo funcional!
    9. Pide ayuda (Consulta la API Humana): ¡No estás solo/a! Habla con compañeros (a veces explicar el problema en voz alta ayuda a verlo), pregunta a los profesores en tutorías (¡están para eso!), busca grupos de estudio. Atascarse es NORMAL programando y estudiando ingeniería. No es signo de debilidad pedir ayuda.
    10. Sé Compilador Amable contigo mismo: Si un día procrastinas más de la cuenta, no te compiles con errores fatales. Analiza qué pasó, aprende y resetea. Mañana será otro ciclo. La resiliencia es clave en esta carrera.

    Ingeniería Informática es exigente, sí, pero también increíblemente gratificante. Gestionar la carga de trabajo y la procrastinación es una habilidad más que estás aprendiendo, tan importante como programar en C o resolver integrales.

    Implementa estas estrategias poco a poco, sé constante y verás cómo no solo mejoras tus resultados, sino que también reduces el estrés y disfrutas más del camino. ¡Tienes un futuro fascinante por delante! ¡Mucho ánimo con este primer año, futuro/a crack de la informática!