A fin de poder conectarse a una base de datos SQLite desde PHP, es necesario contar con la extensión "pdo_sqlite". Este artículo demuestra cómo instalar y configurar esta extensión en un servidor OpenBSD con httpd y PHP-FPM.

Anteriormente demostré cómo montar un servidor Web con httpd y PHP-FPM en OpenBSD. Dicho artículo demuestra cómo instalar PHP-FPM y cómo configurar un sitio Web en httpd. Ahora veamos cómo instalar y configurar la extensión "pdo_sqlite" para acceder a bases de datos SQLite desde PHP.



Se supone que se parte con PHP y SQLite3 instalado de la siguiente manera:

obsd# pkg_add php sqlite3

La versión estable de OpenBSD actual (6.6) provee las versiones de PHP 7.1, 7.2 y 7.3:

obsd# pkg_add php      
quirks-3.182 signed on 2019-10-12T12:14:24Z
Ambiguous: choose package for php
a	0: <None>
	1: php-7.1.32
	2: php-7.2.23
	3: php-7.3.10

Es recomendable instalar la última versión de PHP disponible, si la aplicación Web a instalar lo soporta. Por ende seleccionar la opción 3 (PHP 7.3.10).

Luego habilitar e inciar FPM:

obsd# rcctl start php73_fpm
obsd# rcctl enable php73_fpm

Para habilitar httpd, editar el archivo /etc/rc.conf.local y agregar la siguiente línea:

httpd_flags=

Luego se deberá configurar httpd como explica el artículo Cómo montar un servidor Web con PHP en OpenBSD. Recordar que httpd corre "chrooteado" dentro de /var/www para mejorar la seguridad del sistema.

Instalar y configurar pdo_sqlite

Para disponer de la extensión de PHP "pdo_sqlite", es necesario instalar el paquete "php-pdo_sqlite":

obsd# pkg_add php-pdo_sqlite

Elegir la versión de PHP correspondiente a la instalada anteriormente.

Luego es necesario habilitar la extensión editando el archivo de configuración de PHP. En este caso /etc/php-7.3.ini.

Buscar la siguiente línea:

;extension=pdo_sqlite

Simplemente eliminar el comentario para habilitar la extensión:

extension=pdo_sqlite

Guardar los cambios y reiniciar PHP-FPM:

obsd# /etc/rc.d/php73_fpm restart

Es posible comprobar que la extensión se encuentra habilitada ejecutando:

obsd# php-7.3 -i | grep "PDO"     
PDO
PDO support => enabled
PDO drivers => sqlite
PDO Driver for SQLite 3.x => enabled


Tal vez pueda interesarte


Compartí este artículo