Instalación

Requisitos

Los siguientes requisitos definen el entorno donde el funcionamiento de ZWF está probado.

  • Sistema operativo CentOS 6, Debian 7, Debian 8, Ubuntu LTS 12.04, Fedora 19/20.
  • Servidor Apache 2 (apache2 en caso de Debian/Ubuntu; httpd en caso de CentOS/Fedora).
  • PHP 5.3 instalado como módulo de Apache.
  • Extensión de PHP: pgsql si se va usar las funciones de ZWF de acceso a BD con este motor.
  • Extensión de PHP: mysqli si se va a usar las funciones de ZWF de acceso a BD con este motor.
  • Extensión de PHP: mbstring.
  • Opcional: base de datos PostgreSQL 8.4 o superior o bien MySQL 5.1 o superior.

Incompatibilidades

En algunos casos el módulo mod_negotiation, en concreto la funcionalidad MultiViews, puede provocar problemas si ZWF va a coexistir con otros ficheros en el mismo directorio y esos ficheros tienen el mismo nombre que algún controlador de ZWF. En este caso puede ser necesario añadir

Options -MultiViews

al fichero de configuración de Apache en la sección <VirtualHost> o análoga correspondiente donde vaya a estar alojado ZWF.

Instalación

Descomprimir y copiar en su caso el contenido del directorio src del paquete ZWF en el directorio raíz del sitio web donde se va a ejecutar la aplicación. Este directorio suele ser el establecido por DocumentRoot en la configuración de Apache, pero también puede ser un subdirectorio si es que la aplicación se alojará allí.

ZWF no se ejecuta desde ninguna subcarpeta. Si al descomprimirlo se creó alguna carpeta (muchos descompresores actúan así), es el contenido de dicha carpeta el que debe ser copiado al directorio raíz del sitio web.

El resultado final será que tanto index.php como .htaccess quedarán en el directorio raíz y, a ese mismo nivel, el resto de directorios.

El fichero .htaccess es un fichero oculto. A la hora de copiarlo al directorio raíz del sitio web, podría ser omitido por el programa que hace la copia ( clientes FTP, SFTP, exploradores de archivos, etc). Hay que asegurarse de que se copia correctamente.

Configuración de Apache

PHP

El módulo PHP para Apache es necesario que esté instalado y activo. Se requiere la versión 5.3 ó superior. El módulo debe estar compilado, o bien el paquete instalado, con la extensión mbstring (Multi-Byte String) y, si se va a usar PostgreSQL usando los módulos de acceso a datos de ZWF, la extensión pgsql. Análogamente, en caso de usar MySQL, instalar la extensión mysqli.

Rewrite

ZWF usa directivas del módulo mod_rewrite de Apache. Están definidas en el fichero .htaccess. Por lo tanto es necesario que mod_rewrite esté instalado y activo en Apache. En la sección <VirtualHost> o análoga de Apache es necesario al menos la siguiente directiva:

AllowOverride FileInfo

También funcionará:

AllowOverride All

Esto es importante, porque a veces se tiene lo siguiente:

AllowOverride None

y en tal caso las directivas de mod_rewrite que hay en .htaccess no funcionarán y, por lo tanto, ZWF tampoco.

Permisos de los ficheros

No se requieren permisos especiales. Como toda aplicación web, puede ser conveniente:

  • Crear un directorio con permisos de lectura y escritura para guardar logs, ficheros subidos, etc.
  • Los ficheros de configuración pueden tener contraseñas. En el caso de ZWF, estos ficheros se encuentran en el directorio cfg/. Estos ficheros deberían tener permisos únicamente de lectura y ser accesibles solo por el usuario (y grupo, dependiendo de la configuración que usemos) de Apache.

Problemas habituales

Si se encuentra un error file not found o index not found, asegúrese de que el fichero .htaccess existe y es el que venía con el paquete ZWF.

Si el error es access denied, compruebe los permisos y propietarios de los ficheros. La instalación de Apache en Linux suele contener algún fichero de muestra index.html con los permisos y propietarios correctos.

El módulo de Apache mod_rewrite debe estar activo. Normalmente al activarlo es necesario reiniciar el servidor (apache2 o httpd).