En esta ocasión veremos cómo instalar phpPgAdmin en CentOS 7 paso a paso, una magnífica interfaz web para PostgreSQL que no sólo nos permitirá trabajar remotamente sobre este servicio de bases de datos en nuestro servidor o VPS CentOS, sino que nos hará la vida mucho más fácil a aquellos que aún no dominamos el trabajo desde consola.
Contenido
Antes de instalar phpPgAdmin en CentOS 7
Para completar esta guía de instalación de phpPgAdmin en CentOS 7 deberías cumplir estos requisitos básicos:
- Una máquina CentOS 7 actualizada.
- Servicio web con PHP (asumimos Apache).
- Servicio de bases de datos PostgreSQL configurado para acceso con contraseña.
- Acceso a consola con root o un usuario con permisos de sudo.
- Conexión a Internet.
Si aún no tienes el entorno listo, te puede interesar la guía de instalación de PostgreSQL en CentOS 7. Es importante que tu servicio web ofrezca las conexiones seguras con HTTPS, también puedes consultar para ello la guía de instalación de Apache en CentOS 7.
Qué versión de phpPgAdmin instalar
A la hora de realizar la instalación de phpPgAdmin en CentOS 7 tienes dos alternativas:
- La última versión de phpPgAdmin procedente de su sitio oficial.
- La versión procedente del repositorio oficial de PostgreSQL, la adecuada si has instalado PostgreSQL Server desde este repositorio.
En esta guía vas a poder instalar una u otra opción de phpPgAdmin para CentOS 7.
Cómo instalar la última versión de phpPgAdmin para CentOS 7
Si quieres instalar la última versión de phpPgAdmin en CentOS 7 debes tener en cuenta que se necesita PHP 7.1 o superior.
Herramientas de consola
Necesitaremos algunas herramientas procedentes de los repositorios del sistema que actualizaremos:
~$ sudo yum update
E instalaremos dichas herramientas:
~$ sudo yum install -y bzip2 wget
Cómo descargar phpPgAdmin para CentOS 7
Para descargar la versión disponible más reciente debemos visitar la web oficial del proyecto:
En la sección «Releases» encontraremos el histórico de lanzamientos de phpPgAdmin, pero nos centraremos en la última versión, que nos ofrece paquetes en formato .zip y .tar.bz2:
Será el paquete .tar.bz2 el que elijamos, así que lo descargaremos con el navegador o desde consola si trabajamos en remoto:
~$ wget https://github.com/phppgadmin/phppgadmin/releases/download/REL_7-13-0/phpPgAdmin-7.13.0.tar.bz2
Archivos de phpPgAdmin
Descomprimiremos el archivo que descargamos antes directamente en su ubicación definitiva:
~$ sudo tar xf phpPgAdmin-7.13.0.tar.bz2 -C /usr/share/
Cambiaremos el propietario y el grupo del directorio que se ha creado en /usr/share/ a root:
~$ sudo chown -R root:root /usr/share/phpPgAdmin-7.13.0/
Finalmente crearemos un enlace simbólico sin números de versión que usaremos como referencia, para facilitar en el futuro posibles actualizaciones:
~$ sudo ln -s /usr/share/phpPgAdmin-7.13.0/ /usr/share/phpPgAdmin
PHP
La aplicación phpPgAdmin necesita la presencia en CentOS 7 de ciertas extensiones de PHP. Nos aseguraremos de que estén instaladas:
~$ sudo yum install -y php-mbstring php-pgsql
Instaladas las extensiones, recargaremos la configuración del servicio web:
~$ sudo systemctl reload httpd
Servicio web
Para poder trabajar con el directorio que hemos instalado en /usr/share/ crearemos un alias de Apache, a través de un nuevo archivo de configuración en /etc/httpd/conf.d/:
~$ sudo nano /etc/httpd/conf.d/phpPgAdmin.conf
El contenido será el siguiente:
Alias /phppgadmin /usr/share/phpPgAdmin <Location /phppgadmin> <IfModule mod_authz_core.c> Require all granted </IfModule> </Location>
Si te gusta otro alias puedes indicarlo, haciendo el cambio tanto en la directiva Alias como en el bloque Location.
Guardados los cambios, los aplicamos recargando la configuración de Apache:
~$ sudo systemctl reload httpd
Cómo instalar phpPgAdmin en CentOS 7 desde el repositorio de PostgreSQL
Si has instalado PostgreSQL desde el repositorio oficial entonces puedes instalar phpPgAdmin en CentOS 7 desde este mismo repositorio, cuya versión está muy actualizada también.
Empezaremos actualizando las listas y los paquetes ya instalados:
~$ sudo yum update
El paquete que necesitamos en esta ocasión es phpPgAdmin (las mayúsculas importan), que podremos instalar mediante el comando yum:
~$ sudo yum install -y phpPgAdmin php-mbstring php-pgsql
Tras la descarga e instalación del paquete phpPgAdmin y sus dependencias se recarga el servicio web con una nueva configuración, guardada en el archivo /etc/httpd/conf.d/phpPgAdmin.conf.
Esta nueva configuración crea un alias /phpPgAdmin (de nuevo las mayúsculas importan), de modo que habrá que añadir este alias a la dirección IP o dominio del servidor CentOS 7 para poder conectar.
Aunque antes de probar phpPgAdmin, haremos algunos ajustes.
Cómo configurar phpPgAdmin en CentOS 7
Para configurar phpPgAdmin en CentOS 7 debemos crear un archivo de configuración config.inc.php en el directorio /etc/phpPgAdmin/. Podemos copiar el arcivo config.inc.php-dist que nos ofrece la instalación de phpPgAdmin y que se encuentra en la misma ruta:
~$ sudo cp /etc/phpPgAdmin/config.inc.php-dist /etc/phpPgAdmin/config.inc.php
Los valores por defecto de este archivo servirán bien inicialmente.
Por otro lado, editaremos el archivo phpPgAdmin.conf que configura el alias para Apache:
~$ sudo nano /etc/httpd/conf.d/phpPgAdmin.conf
Si quieres cambiar el alias /phpPgAdmin por uno más cómodo como /phppgadmin, esta es la línea que debes modificar:
... Alias /phpPgAdmin /usr/share/phpPgAdmin ...
Y configurar un alias, por ejemplo, sin mayúsculas:
... Alias /phppgadmin /usr/share/phpPgAdmin ...
Si lo haces, tendrás que modificar el comienzo del bloque Location, que hace referencia al alias, dejándolo así:
... <Location /phppgadmin> ...
En cualquier caso, para permitir el acceso desde la red, buscaremos esta directiva Require dentro del bloque Location:
... # Apache 2.4 Require local ...
La desactivaremos situando un carácter # al inicio de línea e incluiremos otra directiva Require que nos permitirá acceder desde cualquier sitio:
... # Require local Require all granted ...
Guardados los cambios en el archivo, aplicaremos la nueva configuración recargando el servicio httpd:
~$ sudo systemctl reload httpd
Y ya puedes trabajar con phpPgAdmin.
Cómo acceder a phpPgAdmin en CentOS 7
Independientemente de qué método hayas elegido para instalarlo, para acceder a phpPgAdmin en CentOS 7 desde un navegador añadiremos el alias (/phppgadmin, /phpPgAdmin o el que hayas configurado) a la dirección IP o dominio del servidor.
En este ejemplo, el servidor CentOS 7 es accesible en el dominio centos7.local.lan, así que podemos usar http://centos7.local.lan/phppgadmin como URL:
Si seguimos cualquiera de los enlaces «Servidores» que tenemos a la vista nos llevará a una lista de los servidores a los que la aplicación tiene acceso. Por defecto, incialmente sólo veremos el servicio PostgreSQL local:
Al intentar acceder al servicio se nos presentará una página de inicio de sesión donde debemos introducir el rol con el que queremos conectar y su contraseña:
Al iniciar sesión entraremos en la página principal de phpPgAdmin, donde tendremos a la vista de una forma organizada y sencilla todo lo que podemos hacer, según los permisos del rol con el que hemos accedido:
¡Ya puedes empezar a trabajar con tus bases de datos!
Conclusión
Ahora que sabes cómo instalar y configurar phpPgAdmin en CentOS 7 ya puedes trabajar sobre tu servicio de bases de datos PostgreSQL desde cualquier sitio con la comodidad de su sencilla interfaz web. Recuerda que si accedes con phpPgAdmin a tu VPS CentOS es importante configurar el acceso a través de protocolo seguro HTTPS.
¿Dudas, preguntas? ¿Tal vez alguna corrección o sugerencia? Nada mejor que dejar un comentario.
¡Apoya este sitio!
Si te ha servido esta pequeña guía de instalación y configuración de phpPgAdmin en CentOS 7 y quieres agradecérnoslo, cualquier mínima contribución ayuda al mantenimiento de este sitio y a la creación de más tutoriales y guías.
Puedes ayudarnos dejando 1 $ de propina con PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!