Uso de psysh en Hosting Compartido

Al utilizar psysh o el comando php artisan tinker de Laravel en un entorno con permisos de usuario limitados, es posible que te encuentres con el siguiente error:

Unable to create PsySH runtime directory. Make sure PHP is able to write to {some directory path} in order to continue..

Este error se debe a que psysh intenta utilizar una ruta a la que el usuario no tiene acceso.

Para solucionarlo, añade un archivo en ~/.config/psysh/config.php con el siguiente contenido:

<?php
return [
'runtimeDir' => '~/tmp'
];

Artículo extraído de este post:
https://andrewrminion.com/2021/02/using-psysh-in-shared-hosting-or-limited-user-environments/

Instalar Composer en MacOSX

Composer no viene por defecto en las versiones de MacOs, sin embargo, PHP, sí. Aquí voy a explicar, at a glance, cómo llevar a cabo la instalación de este gestor de paquetes de PHP en MacOS.

  1. Abrir un terminal o consola de comandos
  2. Descargar composer, con el siguiente comando:
    # curl -sS https://getcomposer.org/installer | php
  3. Donde hayas descargado el composer, existirá el fichero composer.phar, este lo movemos a la ruta /usr/local/bin, con el siguiente comando:
    # sudo mv composer.phar /usr/local/bin/
  4. Cambiamos los permisos del fichero que hemos movido, con el siguiente comando:
    # sudo chmod 755 /usr/local/bin/composer.phar
  5. Creamos un alias en nuestro perfil de usuario. Si no lo sabes es crear una entrada en el fichero .profile que estará en tu «home». Para ello usa cualquier editor de texto disponible, tal como nano, vi, emacs, etc.
    alias composer=”php /usr/local/bin/composer.phar”
  6. Posteriormente, lanzamos el siguiente comando para que se cargue el alias en memoria.
    # source ~/.profile
  7. Ya tenemos instalado y operativo el gestor composer. Para chequearlo, ejecuta el siguiente comando:
    # composer -v

Applying a patch

Como seguramente te habrá pasado en más de una ocasión, sobre todo si instalas módulos no validados por el equipo oficial, habrás sufrido con la temida «pantalla blanca» en tu página Drupal o errores que no te echan abajo el sitio entero, pero que no te dejan hacer uso de una funcionalidad. Esto ocurre cuando tienes módulos del estilo:

Continuar leyendo «Applying a patch»

Routing.yml y links.[menu|action|action|contextual].yml

Cuando estamos implementando un módulo personalizado de Drupal tenemos que lidiar con algunos ficheros en formato YAML. Estos tienen ciertos cometidos bastantes confusos para los newbies, así que voy a poner un poco de orden y aclaración. Los ficheros son:

  • mimodulo.routing.yml
    • Define las URL y controladores que van a gestionar una página*.
  • mimodulo.links.menu.yml
    • Inserta en las barra de menús accesos a funciones de nuestro módulo, páginas externas, …
  • mimodulo.links.task.yml
    • Inserta en las pestañas (tabs) accesos a funciones de nuestro módulo.
  • mimodulo.links.action.yml
    • Inserta botones con acceso a las funciones de nuestro módulo.
  • mibloque.links.contextual.yml
    • Crea menú contextuales en los bloques.
Continuar leyendo «Routing.yml y links.[menu|action|action|contextual].yml»

Gestión de rutas según PHP

Este post surge de la necesidad de resolver una «pantalla blanca de la muerte» que me apareció con Drupal. Cuando pude ver de dónde venía el error, y tras días, sí, días de consultas descubrí que el problema no era yo, eras tú, pedazo de… perdón, me he desviado del tema y me vino a la cabeza un recuerdo negativo del pasado. ¡Qué jodida es la traición y la mentira, eh! jeje.

Continuar leyendo «Gestión de rutas según PHP»