Instalación de PHP en sistemas UNIX

Instalación de PHP en sistemas UNIX

Esta sección le guiará a través de la con?guración e instalación del PHP. Conocimientos y software necesarios:

Instalación de PHP en sistemas UNIX

Instalación de PHP en sistemas UNIX


  • Habilidades básicas en UNIX (ser capaz de manejar el «make» y un compilador de C)
  • Un compilador ANSI de C
  • Un servidor web

Instrucciones Rápidas de Instalación (Versión Módulo de Apache)

  1. gunzip apache_1.3.x.tar.gz
  2. tar xvf apache_1.3.x.tar
  3. gunzip php-3.0.x.tar.gz
  4. tar xvf php-3.0.x.tar
  5. cd apache_1.3.x
  6. ./configure –prefix=/www
  7. cd ../php-3.0.x
  8. ./configure –with-mysql –with-apache=../apache_1.3.x –enable-track-vars
  9. make
  10. make install
  11. cd ../apache_1.3.x
  12. ./configure –prefix=/www –activate-module=src/modules/php3/libphp3.a
  13. make
    1. make install
    2. En lugar de este paso quizás prefiera simplemente copiar el binario httpd encima del binario existente. Si lo hace, asegúrese antes de cerrar su servidor.
  14. cd ../php-3.0.x
    1. cp php3.ini-dist /usr/local/lib/php3.ini
    2. Puede editar el archivo /usr/local/lib/php3.ini para ajustar opciones del PHP. Si prefiere tenerlo en otro sitio, utilice –with-config-file-path=/path en el paso 8.
  15. Edite su archivo httpd.conf o srm.conf y añada:

AddType application/x-httpd-php3 .php3

Puede elegir la extensión que desee aquí. .php3 es simplemente nuestra sugerencia.

18. Utilice su método habitual para iniciar el servidor Apache (debe detener y reiniciar el servidor, no solamente hacerlo recargarse usando una señal HUP o USR1.)

Con?guración

Hay dos maneras de con?gurar el PHP.

    • Utilizando el script de «setup» que viene con el PHP. Este script le hace una serie de preguntas (casi como el script «install» del PHP/FI 2.0) y ejecuta el «con?gure» al ?nal. Para ejecutar este script, escriba ./setup.
    • Este script también creará un archivo llamado «do-conf», que contendrá las opciones pasadas a la con?guración. Puede editar este archivo para cambiar algunas opciones sin tener que re-ejecutar el «setup». Escriba luego ./do-conf para ejecutar la con?guración con las nuevas opciones.
  • Ejecutar el «con?gure» a mano. Para ver las opciones de que dispone, escriba ./con?gure –help.

Los detalles sobre las distintas opciones de con?guración son listados a continuación.

Módulo del Apache

Para con?gurar el PHP como módulo de Apache, responda «yes» a «Build as an Apache module?» (la opción –with-apache=DIR es la que lo con?gura) y especi?que el directorio base de la distribución de Apache. Si ha desempacado el Apache en /usr/local/www/apache_1.2.4, este será su directorio base de la distribución de Apache. El directorio por defecto es /usr/local/etc/httpd.

Módulo fhttpd

Para con?gurar el PHP como módulo fhttpd, responda «yes» a «Build as an fhttpd module?» (la opción –with-fhttpd=DIR es la que lo con?gura) y especi?que el directorio base del fuente del fhttpd. El directorio por defecto es /usr/local/src/fhttpd. Si está ejecutando fhttpd, con?gurar PHP como módulo le dará mejor rendimiento, más control y capacidad de ejecución remota.

CGI version

El valor por defecto es con?gurar el PHP como programa CGI. Si está ejecutando un servidor web para el que el PHP tiene soporte como módulo, debería elegir dicha solución por motivos de rendimiento. Sin embargo, la versión CGI permite a los usuarios del Apache el ejecutar distintas páginas con PHP bajo distintos identi?cadores de usuario. Por favor, asegúrese de haber leído el capítulo sobre Seguridad si va a ejecutar el PHP como CGI.

Opciones de soporte para Base de Datos

El PHP tiene soporte nativo para bastantes bases de datos (así como para ODBC):

Adabas D

–with-adabas=DIR

Compila con soporte para Adabas D. El parámetro es el directorio de instalación de AdabasDypor defecto vale /usr/local/adabasd.

Página de Adabas (http://www.adabas.com/)

dBase

–with-dbase

Habilita el soporte integrado para DBase. No se precisan librerías externas.

?lePro

–with-filepro

Habilita el soporte integrado de sólo lectura para ?lePro. No se precisan librerías externas.

mSQL

–with-msql=DIR

Habilita el soporte para mSQL. El parámetro es el directorio de instalación de mSQL y por defecto vale /usr/local/Hughes. Este es el directorio por defecto de la distribución mSQL 2.0. con?gure detecta automáticamente qué versión de mSQL está ejecutándose y el PHP soporta tanto 1.0 como 2.0, pero si compila el PHP con mSQL 1.0 sólo podrá acceder a bases de datos de esa versión y viceversa.

Vea también Directivas de Con?guración de mSQL en el archivo de con?guración.

Página de mSQL (http://www.hughes.com.au)

MySQL

–with-mysql=DIR

Habilita el soporte para MySQL. El parámetro es el directorio de instalación de MySQL y por defecto vale /usr/local. Este es el directorio de instalación de la distribución de MySQL. Vea también Directivas de Con?guración de MySQL en el archivo de con?guración. Página de MySQL (http://www.tcx.se)

iODBC

–with-iodbc=DIR

Incluye soporte para iODBC. Esta característica se desarrolló inicialmente para el iODBC Driver Manager, un gestor de controlador de ODBC de redistribución libre que ese ejecuta bajo varios sabores de UNIX. El parámetro es el directorio de instalación de iODBC y por defecto vale /usr/local.

Página de FreeODBC (http://users.ids.net/~bjepson/freeODBC/) o página de iODBC (http://www.iodbc.org)

OpenLink ODBC

–with-openlink=DIR

Incluye soporte para OpenLink ODBC. El parámetro es el directorio de instalación de OpenLink ODBC y por defecto vale /usr/local/openlink.

Página de OpenLink Software (http://www.openlinksw.com/)

Oracle

–with-oracle=DIR

Incluye soporte para Oracle. Se ha probado y debería funcionar al menos con las versiones de la 7.0 a la

7.3. El parámetro es el directorio ORACLE_HOME. No necesita especi?car este parámetro si su entorno de Oracle ya está ajustado.

Página de Oracle (http://www.oracle.com)

PostgreSQL

–with-pgsql=DIR

Incluye soporte para PostgreSQL. El parámetro es el directorio base de la instalación de PostgreSQL y por defecto vale /usr/local/pgsql. Vea también Directivas de Con?guración de Postgres en el archivo de con?guración. Página de PostgreSQL (http://www.postgreSQL.org/)

Solid

–with-solid=DIR

Incluye soporte para Solid. El parámetro es el directorio de instalación y vale por defecto /usr/local/solid.

Página de Solid (http://www.solidtech.com)

Sybase

–with-sybase=DIR

Incluye soporte para Sybase. El parámetro es el directorio de instalación y vale por defecto /home/sybase. Vea también Directivas de Con?guración de Sybase en el archivo de con?guración. Página de Sybase (http://www.sybase.com)

Sybase-CT

–with-sybase-ct=DIR

Incluye soporte para Sybase-CT. El parámetro es el directorio de instalación de Sybase-CT y por defecto vale /home/sybase.

Vea también Directovas de Con?guración de Sybase-CT en el archivo de con?guración.

Velocis

–with-velocis=DIR

Incluye soporte para Velocis. El parámetro es el directorio de instalación de Velocis y vale por defecto /usr/local/velocis.

Página de Velocis (http://www.raima.com)

Una librería a medida de ODBC

–with-custom-odbc=DIR

Incluye soporte para una librería a medida arbitraria de ODBC. El parámetro es el directorio base y por defecto vale /usr/local.

Esta opción implica que se ha de?nido CUSTOM_ODBC_LIBS cuando se ejecutó el script de con?guración. También deberá tener una cabecera odbc.h válida en algún lugar de su sendero (path) de inclusión. Si no tiene uno, créelo e incluya su cabecera especí?ca desde ahí. Su cabecera puede requerir algunas de?niciones extra, particularmente si es multiplataforma. Defínalas en CFLAGS.

Por ejemplo, puede usar Sybase SQL Anywhere bajo QNX como sigue: CFLAGS=-DODBC_QNX LDFLAGS=-lunix CUSTOM_ODBC_LIBS=»-ldblib -lodbc» ./configure –with-custom-odbc=/usr/lib/sqlany50

ODBC Uni?cado

–disable-unified-odbc

Deshabilita el módulo de ODBC Uni?cado, que es un interfaz común a todas las bases de datos con interfaces basados en ODBC, tales como Solid y Adabas D. También funciona para librerías normales de ODBC. Ha sido probado con iODBC, Solid, Adabas D y Sybase SQL Anywhere. Requiere que uno (y sólo uno) de estos módulos o el módulo de Velocis esté habilitado, o que se especi?que una librería a medida de ODBC. Esta opción sólo se puede aplicar si alguna de estas opciones es usada: –with-iodbc, –with-solid, –with-adabas, –with-velocis, o –with-custom-odbc.

Vea también Directivas de Con?guración de ODBC Uni?cado en el archivo de con?guración.

LDAP

–with-ldap=DIR

Incluye soporte para LDAP (Lightweight Directory Access Protocol -Protocolo Ligero de Acceso a Directorios). El parámetro es el directorio base de instalación de LDAP, y por defecto vale /usr/local/ldap.

Puede encontrar más información sobre LDAP en RFC1777 (ftp://ftp.isi.edu/in-notes/rfc1777.txt) y en RFC1778 (ftp://ftp.isi.edu/in-notes/rfc1778.txt).

Otras opciones de con?guración

–with-mcrypt=DIR

–with-mcrypt

Incluye soporte para la librería mcrypt. Vea la documentación de mcrypt para más información. Si utiliza el argumento opcional DIR, el PHP buscará mcrypt.h en DIR/include.

–enable-sysvsem

–enable-sysvsem

Incluye soporte para semáforos Sys V (soportados por muchos derivados Unix). Vea la documentación sobre Semáforos y Memoria Compartida para más información.

–enable-sysvshm

–enable-sysvshm

Incluye soporte para la memoria compartida Sys V (soportada por muchos derivados Unix). Vea la documentación sobre Semáforos y Memoria Compartida para más información.

–with-xml

–with-xml

Incluye soporte para un parser XML no validador que utiliza la librería expat (http://www.jclark.com/xml/) de James Clark. Vea la referencia de funciones XML para más detalles.

–enable-maintainer-mode

–enable-maintainer-mode

Activa avisos extra de dependencias y del compilador utilizados por algunos de los desarrolladores del PHP.

–with-system-regex

–with-system-regex

Utiliza la librería de expresiones regulares del sistema en lugar de la incluída. Si está compilando PHP como módulo de servidor, debe utilizar la misma librería cuando genere el PHP y cuando lo enlace con el servidor. Active esto si la librería del sistema proporciona características especiales que pueda necesitar. Se recomienda utilizar la librería incluída siempre que sea posible.

–with-con?g-?le-path

–with-config-file-path=DIR

El path utilizado para buscar el archivo de con?guración cuando arranca el PHP.

–with-exec-dir

–with-exec-dir=DIR

Sólo permite ejecutar programas en DIR cuando está en modo seguro. Por defecto vale /usr/local/bin. Esta opción sólo ?ja el valor por defecto. Puede ser cambiado posteriormente mediante la directiva safe_mode_exec_dir en el ?chero de con?guración .

–enable-debug

–enable-debug

Habilita información de depuración adicional. Esto hace posible obtener información más detallada cuando hay problemas con el PHP. (Nótese que esto no tiene que ver con las facilidades de depuración o con la información disponible para los script PHP).

–enable-safe-mode

–enable-safe-mode

Habilita el «modo seguro» por defecto. Esto impone varias restricciones sobre lo que el PHP puede hacer, tales como abrir ?chero sólo en el raiz de documentos. Lea el capítulo de Seguridad para más información. Los usuarios de CGI deberán siempre habilitar el modo seguro. Esta opción sólo ?ja el valor por defecto. Puede ser habilitado o deshabilitado posteriormente mediante la directiva safe_mode en el archivo de con?guración.

–enable-track-vars

–enable-track-vars

Hace que el PHP lleve el control de dónde proceden las variables GET/POST/cookie usando las matrices HTTP_GET_VARS, HTTP_POST_VARS y HTTP_COOKIE_VARS. Esta opción sólo ?ja el valor por defecto. Puede ser habilitado o deshabilitado posteriormente mediante la directiva track_vars en el archivo de con?guración.

–enable-magic-quotes

–enable-magic-quotes

Habilita las comillas mágicas por defecto. Esta opción sólo ?ja el valor por defecto. Puede ser habilitada

o deshabilitada posteriormente mediante la directiva magic_quotes_runtime en el archivo de con?guración. Vea también las directivas magic_quotes_gpc y magic_quotes_sybase.

–enable-debugger

–enable-debugger

Habilita el soporte de depuración interno del PHP. Esta característica aún está en estado experimental. Vea también las directivas de Con?guración del Depurador en el archivo de con?guración.

–enable-discard-path

–enable-discard-path

Si está habilitado, el ejecutable CGI del PHP se puede situar tranquilamente fuera del árbol de la web y la gente no podrá saltarse la seguridad del .htaccess. Lea la sección en el capítulo de seguridad sobre esta opción.

–enable-bcmath

–enable-bcmath

Habilita las funciones matemáticas de precisión arbitraria estilo bc. Vea también la opción bcmath.scale en el archivo de con?guración.

–enable-force-cgi-redirect

–enable-force-cgi-redirect

Habilita la comprobación de seguridad para redirecciones internas del servidor. Deberá usar esta opción si está ejecutando la versión CGI bajo Apache.

Cuando se utiliza el PHP como un ejecutable CGI, siempre comprueba primero is está siendo utilizado bajo redirección (por ejemplo bajo Apache, usando directivas Action). Esto asegura que el ejecutable del PHP no se puede usar para saltarse los mecanismos estánder de autenti?cación del servidor web llamando al ejecutale directamente, como en http://my.host/cgi-bin/php/secret/doc.html. Este ejemplo accede al archivo http://my.host/secret/doc.html pero sin respetar ningún ajuste de seguridad del httpd para el directorio /secret.

No habilitando esta opción se deshabilita la comprobación y se permite el saltarse los ajustes de seguridad y autenticación del httpd. Haga esto sólo si el software de su servidor no puede indicar que se ha realizado una redirección segura y que todos sus archivos bajo la raiz de documentos y los directorios de los usuarios pueden ser accedidos por cualquiera.

Lea la sección en el capítulo de seguridad acerca de esta opción.

–disable-short-tags

–disable-short-tags

Deshabilita las etiquetas de PHP en formato corto <? ?>. Debe deshabilitar el formato corto si desea usar PHP con XML. Con el formato corto deshabilitado, la única etiqueta de código de PHP es <?php ?>. Esta opción sólo ?ja el valor por defecto. Puede ser habilitada o deshabilitada posteriormente mediante la directiva short_open_tag en el archivo de con?guración.

–enable-url-includes

–enable-url-includes

Hace posible ejecutar código en otros servidores HTTP o FTP directamente desde el PHP usando include(). Vea también la opción include_path en el archivo de con?guración.

–disable-syntax-hl

–disable-syntax-hl

Desconecta el resalte de sintáxis.

CPPFLAGS y LDFLAGS

Para hacer que la instalación de PHP busque los archivos de cabecera o de librería en distintos directorios, modi?que las variables de entorno CPPFLAGS y LDFLAGS respectivamente. Si está utilizando un shell «sensible», podrá ejecutar LDFLAGS=-L/my/lib/dir CPPFLAGS=-I/my/include/dir ./con?gure

Construyendo

Cuando el PHP está con?gurado, ya está listo para construir el ejecutable CGI o la librería PERL. El comando make debería ocuparse de esto. Si fallara y no puede saber el motivo, vea la sección de Problemas.

Probando

Si ha construído el PHP como un programa CGI, puede probar su funcionamiento tecleando make test. Siempre es buena idea probar su construcción. Así puede atrapar pronto los problemas del PHP en su plataforma sin tener que batallar con ellos luego.

Comprobando la velocidad

Si ha construído el PHP como un programa CGI, puede comprobar la velocidad de su código escribiendo make bench. Nótese que se el modo seguro está habilitado por defecto, el test no podrá ?nalizar si se toma más de los 30 segundos disponibles. Esto se debe a que la función set_time_limit() no se puede usar en modo seguro. Use el ajuste de con?guración max_execution_time para controlar este tiempo en sus propios script. make bench ignora el archivo de con?guración.

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *