PHP 8.4.7 Released!

Instalación desde paquetes o puertos en OpenBSD

Esta sección contiene las notas específicas para la instalación de PHP en » OpenBSD.

Uso de paquetes binarios

Este método es el método recomendado para instalar PHP en OpenBSD. También es el método más simple. El paquete core ha sido separado de los módulos y cada uno de ellos puede ser instalado y eliminado independientemente de los otros. Los ficheros necesarios están en el CD de OpenBSD o en el sitio FTP.

El paquete principal que debe ser instalado es php, que contiene el motor base (además de fpm, gettext e iconv) y podría estar disponible en varias versiones. Luego, eche un vistazo a los paquetes de módulos, como php-mysqli o php-imap. Debe utilizar el comando phpxs para activar y desactivar estos módulos en su php.ini.

Ejemplo #1 Ejemplo de instalación de PHP en OpenBSD con Ports

# pkg_add php
# pkg_add php-apache
# pkg_add php-mysqli
  (instalar las bibliotecas PEAR)
# pkg_add pear

Siga las instrucciones mostradas con cada paquete!

  (para eliminar paquetes)
# pkg_delete php
# pkg_delete php-apache
# pkg_delete php-mysqli
# pkg_delete pear

Lea la página de manual Unix » packages(7) para más detalles sobre los paquetes binarios de OpenBSD.

Uso de puertos

También es posible compilar PHP utilizando » el árbol de puertos. Este método es recomendado para usuarios experimentados de OpenBSD. El puerto PHP está dividido en core y extensiones. El directorio extensiones genera los subpaquetes de todos los módulos PHP. Si no desea crear estos módulos, puede utilizar el comando en línea no_* FLAVOR. Por ejemplo, para no compilar el módulo imap, utilice FLAVOR con el valor no_imap.

Problemas comunes

  • Apache y Nginx ya no son el servidor por defecto en OpenBSD, pero pueden ser fácilmente encontrados en los puertos y los paquetes. El nuevo servidor por defecto también se llama 'httpd'.
  • La instalación por defecto de Apache funciona en un » contexto chroot(2), que limitará el acceso de los scripts PHP al directorio /var/www. Por lo tanto, debe crear un directorio /var/www/tmp para que las sesiones PHP sean almacenadas, o utilizar otra solución de almacenamiento. Además, los sockets de bases de datos deben ser colocados en este directorio, o utilizar la interfaz localhost. Si utiliza funciones de red con ficheros como /etc, por ejemplo /etc/resolv.conf, y /etc/services, deberá hacerlos accesibles también en /var/www/etc. El paquete OpenBSD PEAR instala automáticamente los directorios correctos.
  • El paquete OpenBSD para la extensión » gd requiere Xorg. A menos que ya esté incluido después de la instalación añadiendo el conjunto de ficheros xbase.tgz, esto puede ser añadido posteriormente (ver » OpenBSD FAQ#4).
add a note

User Contributed Notes 2 notes

up
20
pete att shitnami.net
9 years ago
A brief update: As of OpenBSD 5.7 (2015) the installation process is extremely easy. Apache httpd was replaced by Nginx, which has since been further replaced by OpenBSD's own server, aptly named 'httpd'.

'httpd' is installed by default, everything else you can still get from packages, with a couple name changes (including Apache and Nginx.) You will be asked which version to install - at the time of writing, versions 5.3.29p1 thru 5.6.5 are available.

#pkg_add php
#pkg_add php-fpm
#pkg_add pear

----
OpenBSD disables most services by default; a blank '_flags' line overrides default 'NO' value. pkg_scripts are located in /etc/rc.d/
To start at boot, edit "/etc/rc.conf.local":

httpd_flags=
pkg_scripts=php_fpm

----
Example /etc/httpd.conf
#
# paths are relative to chroot - e.g, '/var/www/run/php-fpm.sock'
server "default" {
listen on * port 80
location "*.php" {
fastcgi socket "/run/php-fpm.sock"
}
directory index index.php
root "/htdocs"
}

----
For date, timezone issues, copy /etc/localtime:
$cp /etc/localtime /var/www/etc/localtime

If 'localhost' DNS name fails to resolve, copy /etc/hosts
$cp /etc/hosts /var/www/etc/hosts
up
18
Anonymous
3 years ago
UPDATE: OpenBSD 6.9:

- The package "php-fpm" no longer exists. It's the default, so you can just install "php".
- The /var/www/tmp directory will be created automatically when you install PHP.
- PHP 8 is available :D as well as older versions. pkg_add will ask you which version to install.
To Top