Facebook Fanpage


  • Enviar formulario con ajax jquery

    En el siguiente ejemplo, os mostraré como enviar un formulario vía AJAX, este proceso facilitará las consultas necesarias a PHP, todo ello...
  • Descifrando la Seguridad: El Fascinante Mundo de los Criptosistemas de Clave Pública

    Entrada 1: La Revolución de la Criptografía Asimétrica¿Alguna vez te has preguntado cómo puedes enviar información confidencial a través de internet...
  • Cómo configurar un servidor FTP sobre CentOS 7

    Instalación y puesta en marcha de vsftpd Instalar vsftpd en CentOS 7 es sencillo, en esta versión todavía se sigue usando Yum, el gestor de...
  • Oracle Dumpdir – Import, Export y el uso de Directorios.

    Oracle Dumpdir  Import, Export y el uso de Directorios. Cuando tenemos diferentes objetos de la base, ya sea una tabla, datos, etc y...
  • Solución a ORA-65096: invalid common user or role name en Oracle

    Solución a ORA-65096: invalid common user or role name en Oracle Hola a todos, hoy explicaré como solucionar un problema común en Oracle al...
  • Asignar permisos correctos a carpetas 755 y ficheros 644 de forma masiva

    Asignar permisos correctos a carpetas 755 y ficheros 644 de forma masiva Por defecto, en el FTP de una web los permisos deben ser los siguientes:...
  • Publicar aplicación WAR/JSP/SERVLET/TOMCAT/MYSQL en servidor dedicado/vps cPanel

    Publicar aplicación war con conexión a mysql.1. Ingresar al cPanel2. En la opción "Mysql Bases de datos", crear una base de datos, un usuario de...
  • Generar jar con NetBeans incluyendo Bibliotecas Externas Java

    Hola amigos, después de buscar un poco acerca de como incluir las librerías que utilizamos en nuestros proyectos Java...
  • Subir imagen al servidor con Yii Framework y eliminar imagenes del servidor

    En esta ocacion les traigo la manera de como subir imagenes al servidor y una ves subidas las imagenes como eliminarlas del servidor, este ejemplo es...
  • crear host virtual

    Cómo crear un VirtualHost en ubuntu y apache En este post veremos qué es y cómo crear un virtual host utilizando ubuntu y apache. ¿Qué es un...
  • Enviar formulario con ajax jquery

    En el siguiente ejemplo, os mostraré como enviar un formulario vía AJAX, este proceso facilitará las consultas necesarias a PHP, todo ello...
  • Descifrando la Seguridad: El Fascinante Mundo de los Criptosistemas de Clave Pública

    Entrada 1: La Revolución de la Criptografía Asimétrica¿Alguna vez te has preguntado cómo puedes enviar información confidencial a través de internet...
Previous Next

miércoles, 29 de mayo de 2013

Instalar Symfony2 desde cero

Hola amigos bloggueros hoy les dire como instalar Symfony2 versión 2.2.1, no soy un experoto en el tema a decir verdad es la primera vez que instalo symfony2, la instalación la realizare en un entorno linux, yo personalmente estoy utilizando LinuxMint14.
Lo primero que expliare es como configurar un servidor web en nuestro equipo y despues explicare la instalación de Symfony2, la instalación la hago desde cero para que aquellos que se estan iniciando en el mundo de la programación puedan instalar este espectacular framewirk.


1) Primero instalamos Apache

# apt-get install apache2 apache2.2-common apache2-utils ssl-cert  apache2-mpm-prefork
2) Instalamos y habilitamos el módulo para utilizar modrewrite
# apt-get install libapache2-mod-proxy-html
Para habilitar el modulo en apache, ejecutamos:
# a2enmod rewrite
3) Instalamos PHP5
# apt-get install php5 libapache2-mod-php5 php5-common php5-intl
4) Instalamos Mysql
# apt-get install mysql-server mysql-client php5-mysql
5) Por último instalamos phpmyadmi
# apt-get install phpmyadmin
 
Con estos sencillos pasos ya tendremos un servidor web instalado en nuestro equipo.

Ahora continuamos con la instalación de Symfony2.  
Mi IDE favorito para programar es Netbeans, por lo que es el que utilizaré en este ejemplo. Si no lo hemos cambiado, nuestro workspace (donde se encuentran los proyectos a los que podemos acceder desde Netbeans) lo encontraremos en la carpeta NetBeansProjects en nuestra carpeta Home.

1) Procedemos a crear una nueva carpeta con el nombre de nuestro proyecto en el workspace de Netbeans:
$ mkdir /home/NetBeansProjects/miproyecto
2)Entramos en la carpeta que acabamos de crear:
$ cd /home/NetBeansProjects/miproyecto
3)Descargamos Symfony2 (comprueba la última versión en http://symfony.com/download):
Y descomprimimos:
$ tar zxvf Symfony_Standard_Vendors_2.0.0-RC4.tgz
4)Borramos el archivo comprimido que hemos descargado:
$ rm Symfony_Standard_Vendors_2.0.0-RC4.tgz
 
Ya tenemos instalado un proyecto básico en Symfony2. Ahora vamos a configurar Apache para poder acceder desde nuestro navegador favorito.

1) Creamos un nuevo archivo donde irá la configuración de nuestra web:
# vi /etc/apache2/sites-available/miproyecto
Que contendrá el siguiente contenido (cambia “jhongo” por el nombre de tu carpeta Home):

<VirtualHost *:80>
   ServerAdmin email@email.com
   DocumentRoot /home/jhongo/NetBeansProjects/miproyecto/Symfony/web
   ServerName miproyecto.com
   ServerAlias *.miproyecto.com
   ErrorLog /var/log/apache2/miproyecto_error.log
   CustomLog /var/log/apache2/miproyecto_access.log common
   DirectoryIndex index.php
   <Directory "/home/jhongo/NetBeansProjects/miproyecto/Symfony/web">
        Options Indexes FollowSymLinks
        Order Allow,Deny
        Allow from all
        AllowOverride all
        <IfModule mod_php5.c>
           php_admin_flag engine on
           php_admin_flag safe_mode off
           php_admin_value open_basedir none
        </ifModule>
   </Directory>
</VirtualHost>
 
2) Creamos un enlace simbólico de este archivo en sites-enabled para indicar que es una web activa:
# ln -s /etc/apache2/sites-available/miproyecto /etc/apache2/sites-enabled/miproyecto
3) Para que se apliquen los cambios, reiniciamos el servidor Apache:
# /etc/init.d/apache2 restart
4) Por último, forzamos en el archivo /etc/hosts la ip de nuestra web, que en este caso será localhost o 127.0.0.1
# vim /etc/hosts
5) añadimos esta línea al final del fichero:
127.0.0.1 www.miproyecto.com miproyecto.com
 
Después de todo esto, ya podremos acceder a nuestro nuevo proyecto en Symfony2 desde el navegador escribiendo la url que hemos configurado (www.miproyecto.com ó miproyecto.com).

Como primer paso, debemos comprobar si cumplimos con la configuración básica para que funcione nuestro proyecto. Lo haremos desde la siguiente url:

http://miproyecto.com/config.php

Symfony2 config

Como vemos, nos encontramos con dos problemas (podríamos tener más, deberemos resolverlos según sea necesario). En este caso el error es que las carpetas app/cache y app/logs no tienen los permisos necesarios.

Lo arreglaremos así:
chmod 777 /home/NetBeansProjects/miproyecto/Symfony/app/cache
chmod 777 /home/NetBeansProjects/miproyecto/Symfony/app/logs
 
En ocaciones nos genera problemas la intalación con el composer, así que explicare la corrección de este error, empesemos:

  1. Abre una consola de comandos y accede al directorio raíz de tu proyecto Symfony2: 
  2. Ejecuta el siguiente comando:
     
    $ curl -s https://getcomposer.org/installer | php
      
    
   3. Instalamos librerias de terceros
      
     $ php composer.phar install
 
Si todo ha funcionado bien, en el directorio raíz de tu proyecto Symfony2 verás un nuevo archivo llamado composer.phar.

Para comprobar que se ha instalado correctamente, ejecuta el siguiente comando que muestra el menú de opciones de Composer:

$ php composer.phar
 
Instalar Composer de esta manera es correcto, pero te obliga a realizar una nueva instalación para cada proyecto Symfony2. Si tienes muchos proyectos, es mucho mejor que instales Composer de forma global en tu ordenador, para que todos los proyectos utilicen la misma versión de Composer.

Para instalar Composer globalmente, mueve el archivo composer.phar a algún directorio ejecutable del sistema, como por ejemplo:

$ sudo mv composer.phar /usr/local/bin/composer
 
Comprueba que todo funciona bien ejecutando el comando composer sin opciones desde cualquier directorio del sistema.

La instalación global de Composer también facilita su mantenimiento, ya que sólo hay que ejecutar el siguiente comando para actualizar la versión de Composer de todos los proyectos:

$ sudo composer self-update



Una vez arreglados los problemas, ya podemos acceder a nuestro proyecto web con Symfony2 mediante esta url:

http://miproyecto.com/app_dev.php/

Symfony2 home

4 comentarios:

  1. 1. No use NetBeans :S
    2. No es necesario usar mysql, puede ser cualquier otro motor de base de datos
    3. No descarguen Symfony con standard vendors, es mejor descargarlo sin vendors y realizar un php composer.phar install
    Happy Coding !!

    ResponderEliminar
    Respuestas
    1. man es mi primera vez con symfony, no me pidas mucho jejejeje igual gracias por la ayuda y por el comentario ;)

      Eliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  3. Codelobster funciona mejor para mis proyectos Symfony

    ResponderEliminar