martes, 11 de febrero de 2014

Zend Server - Creando el proyecto

La elección de la carpeta destino de nuestro proyecto depende de nuestros gustos, más adelante definiremos un host vitual en la configuración de Apache para acceder a nuestro portal, así que en principio no nos debe preocupar mucho. Si trabajamos con un IDE como Zend Studio Client al hacer una distribución del proyecto (Deploy) o una depuración veremos que Zend Server usará unas carpetas diferentes.
Así pues nuestros proyectos los prodemos ubicar en la carpeta C:\Zend\Apache\htdocs.
Nota: Podemos escoger nuestra carpeta de proyectos "workspace", yo es la que suelo utilizar, principalmente porque la carpeta htdocs ubicaré otros portales ajenos a Zend como por ejemplo phpMyAdmin, y así no mezclar nuestros proyectos con otros portales. Para mayor comodidad en las rutas del proyecto de aquí en adelante usaré htdocs.

Hay varias formas de crear un proyecto. Si hemos instalado ZendServer es tan sencillo como desde línea de comandos, estando en la carpeta de proyectos ejecutar la herramienta de Zend (Zend Tool Framework):
zf create project prueba

El desarrollo de aplicaciones en Zend se basa en el uso de las librerías de ZendFramework, en el caso de tener instalado ZendServer el sistema ya tiene una referencia a las carpetas de las librerías de ZendFramework, ubicadas en C:\Zend\ZendServer\share\ZendFramework, debemos tener configurada la la variable include_path con ruta de las librerías en nuestro php.ini
include_path=".;c:\Zend\ZendServer\bin\pear;C:\Zend\ZendServer\share\ZendFramework\library"
Otra opción es descargarse las librerías de Zend y copiarlas directamente en la carpeta library de nuestro proyecto.

Para más información consultar Create Your Project.

Para nuestro proyecto usaremos la herramienta antes mencionada zf.bat de ZendServer, que nos creará automáticamente la estructura de directorios para nuestro proyecto CeDocCMS:

C:\Zend\Apache\htdocs>zf create project CeDocCMS

Vemos que al ejecutar el comando se ha creado la siguiente estructura de directorios:

CeDocCMS
|-- application 
|   |-- Bootstrap.php
|   |-- configs
|   |   `-- application.ini
|   |-- controllers
|   |   |-- ErrorController.php
|   |   `-- IndexController.php
|   |-- models
|   `-- views
|       |-- helpers
|       `-- scripts
|           |-- error
|           |   `-- error.phtml
|           `-- index
|               `-- index.phtml
|-- library
|-- public
|   |-- .htaccess
|   `-- index.php
`-- tests
    |-- application
    |   `-- bootstrap.php
    |-- library
    |   `-- bootstrap.php
    `-- phpunit.xml

Ahora crearemos un host virtual en Apache que apunte a nuestro proyecto. El fichero donde definiremos nuestros hosts virtuales será conf/extra/httpd-vhosts.conf, pero antes será necesario incluir dicho fichero en la configuración de Apache para que lo tenga en cuenta.
Editaremos C:\Zend\Apache2\conf\httpd.conf y quitaremos los comentarios a la línea donde está definido httpd-vhosts.conf.
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
En el fichero de hosts virtuales añadiremos la entrada de nuestro hosts.
Nota: Hemos de editar el fichero httpd-vhosts.conf puesto que hay hosts virtuales de ejemplo que hemos de eliminar.
Nota: Al crear nuestro proyecto con la Zend Tool Framework en el directorio C:\Zend\Apache2\htdocs\CeDocCMS\docs tenemos a nuestra disposición el fichero README.txt con la definición de ejemplo de nuestro hosts virtual.

<VirtualHost *:80>
   DocumentRoot "C:/Zend/Apache2/htdocs/CeDocCMS/public"
   ServerName .local

   # This should be omitted in the production environment
   SetEnv APPLICATION_ENV development   ErrorLog "logs/CeDodCMS.example.com-error.log"
   CustomLog "logs/CeDodCMS.example.com-access.log" common

   <Directory "C:/Zend/Apache2/htdocs/CeDocCMS/public">
       Options Indexes MultiViews FollowSymLinks
       AllowOverride All
       Order allow,deny
       Allow from all
   </Directory>

</VirtualHost>
Nota: Añadiremos al ejemplo del README.txt la definición personalizada de la generación de logs.

Reiniciaremos el servidor para aplicar los cambios realizados. Si ahora consultamos nuestro localhost veremos el proyecto en funcionamiento:



No hay comentarios:

Publicar un comentario