Últimamente he estado jugueteando en los ratos que he podido con diferentes frameworks para comprobar cual se adaptaba mejor a mis necesidades. En este caso, quiero hablar de la instalación de Zend Framework en un servidor dreamhost ya que en este caso la instalación genérica no sirve.
Las instrucciones que he seguido son las del wiki del servidor, pero con algunas variaciones.
Lo primero de todo es descargar la versión mini del mismo, lo descomprimimos y ponemos los directorios /library y /bin en un directorio que se encuentre en la raíz del usuario donde cuelgan nuestros dominios:
/home/{usuario}/zendfw/
A continuación abrimos con un editor el archivo /bin/zf.sh y eliminamos las siguientes lineas:
[cc lang=’bash’ nowrap=’false’ line_numbers=’false’ width=’550′]
# find php: pear first, command −v second, straight up php lastly
if test “@php_bin@” != ‘@’php_bin’@’; then
PHP_BIN=”@php_bin@”
elif command −v php 1>/dev/null 2>/dev/null; then
PHP_BIN=`command −v php`
else
PHP_BIN=php
fi
[/cc]
Y lo reemplazamos por:
[cc lang=’bash’ ]
# Use DreamHost’s PHP 5 binary
PHP_BIN=/usr/local/php5/bin/php
[/cc]
Y buscamos al final del archivo por este comando:
[cc lang=’bash’ ]
$PHP_BIN −d safe_mode=Off −f “$PHP_DIR/zf.php” −− $@
[/cc]
Y la modificamos para que quede de esta manera:
[cc lang=’bash’ ]
$PHP_BIN −c /home/{nombre_usuario}/Zend_framework/php.ini −d safe_mode=Off −f “$PHP_DIR/zf.php” −− $@[/cc]
Ahora guardamos, y modificamos los permisos al archivo para que sea ejecutable:
[cc lang=’bash’ ]chmod +x $HOME/Zend_framework/bin/zf.sh[/cc]
Ahora creamos un alias para Zend y así hacernos el trabajo aún más facil:
[cc lang=’bash’]alias zf=/home/{nombre_usuario}/Zend_framework/bin/zf.sh
source .bash_profile
[/cc]
Para comprobar la correcta instalación, ejecutamos en la terminal:
[cc lang=’bash’]zf show version[/cc]
Y debería responder:
[cc lang=’bash’]Zend Framework Version: 1.11.1[/cc]
Crear nuestro primer proyecto con Zend:
Para crear un proyecto en Zend tenemos que ejecutar el siguiente comando:
[cc lang=’bash’]zf create project example.com[/cc]
Donde example.com es el dominio o directorio donde se va a encontrar el proyecto, por ejemplo si queremos desarrollarlo en un subdirectorio:
[cc lang=’bash’]zf create project dir [/cc]
A continuación nos vamos al directorio del proyecto y creamos un enlace simbólico a nuestro framework:
[cc lang=’bash’]cd zend.example.com/library
ln -s /home/{nombre_usuario}/zendfw/library/Zend [/cc]
En este punto es cuando modificaremos la configuración de php.ini para nuestro proyecto. Lo primero es importarlo:
[cc lang=’bash’]mkdir $HOME/example.com/cgi-bin
cp /etc/php5/cgi/php.ini $HOME/example.com/cgi-bin/php.ini[/cc]
Y ahora le decimos a nuestro .htaccess donde puede encontrar la configuración de php en lugar de la que viene por defecto. Para ello añadimos al .htaccess estas lineas
[cc lang=’bash’]
Options +ExecCGI
AddHandler php−cgi .php
Action php−cgi /cgi−bin/php5.cgi
Order Deny,Allow
Deny from All
Allow from env=REDIRECT_STATUS
[/cc]
Por último nos queda también decirle a nuestro htaccess, que el proyecto se inicia en el directorio /public cuando lo visite un usuario:
[cc lang=’bash’]
RewriteEngine on
RewriteCond %{HTTP_HOST} example\.com [NC]
RewriteCond %{REQUEST_URI} !/public
RewriteRule (.*) /public/$1 [L][/cc]
LINKS
http://www.maestrosdelweb.com/editorial/guia-zend/
http://wiki.dreamhost.com/Zend_framework
0 Comments