Symfony Framework - Introdução

Este artigo, apresenta uma breve introdução ao Framework Symfony, importante ferramenta para
desenvolvimento ágil na linguagem PHP.

[ Hits: 21.132 ]

Por: Fernando Dutra Neres em 12/03/2012


Instalação



Então vamos ao que interessa, a instalação.

Para que fique claro, estou usando o seguinte ambiente:
  • Ubuntu 11.10
  • Apache 2
  • PHP 5.3
  • MySQL 5.1

1) O primeiro passo, é fazer download do pacote do Symfony. Para este artigo, vou utilizar a versão 1.4.16, segue a URL abaixo:
2) Supondo que você está usando o diretório padrão "/var/www" para raiz do Apache, rode os comandos abaixo para criar os diretórios da aplicação:

# mkdir -p /var/www/vol/lib/vendor

Diretórios criados:
+ vol
+---+ lib
+------+ vendor

3) Vá até o diretório onde foi baixando o pacote do Symfony, e rode o comando abaixo para extrair os arquivo:

tar -zxvf symfony-1.4.16.tgz

4) Em seguida, mova a pasta criada após a extração para o diretório "/var/www/vol/lib/vendor":

# cp -R symfony-1.4.16 /var/www/vol/lib/vendor/

5) Agora, vamos renomear a pasta "/var/www/vol/lib/vendor/symfony-1.4.16" para "/var/www/vol/lib/vendor/symfony":

# mv /var/www/vol/lib/vendor/symfony-1.4.16/ /var/www/vol/lib/vendor/symfony

6) Pronto, já podemos gerar o nosso projeto. Rode os seguintes comando:

# cd /var/www/vol
# php lib/vendor/symfony/data/bin/symfony generate:project vol


Você vai perceber que foram gerados vários diretórios e arquivos dentro do diretório "/var/www/vol", nosso projeto está criado, agora vamos criar nossa aplicação:

# ./symfony generate:app frontend

Geramos um aplicativo chamado: frontend.

7) Neste ponto, vamos adicionar um novo Host no arquivo "/etc/hosts" e Virtualhost para este domínio no arquivo "/etc/apache2/httpd.conf". Adicionando o Host "vol.local":

sudo vi /etc/hosts

Adicione a seguinte linha "127.0.0.1 vol.local" ao arquivo e salve-o, com isto, criamos um novo Host chamado "vol.local" para a máquina local.

Adicionando um novo Virtualhost:

sudo vi /etc/apache2/httpd.conf

O seu arquivo deve ficar semelhante a:

<VirtualHost *:80>
  ServerName localhost
  DocumentRoot "/var/www"
  <Directory "/var/www">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

<VirtualHost *:80>
  ServerName vol.local
  DocumentRoot "/var/www/vol/web"
  DirectoryIndex index.php
  <Directory "/var/www/vol/web">
    AllowOverride All
    Allow from All
  </Directory>

  Alias /sf /var/www/vol/lib/vendor/symfony/data/web/sf
  <Directory "/var/www/vol/lib/vendor/symfony/data/web/sf">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>


Para aplicar as novas configurações de Host e Virtualhost, precisamos reiniciar o Apache:

sudo service apache2 restart

Ou:

sudo /etc/init.d/apache2 restart

8) Se você fez tudo certo, o Symfony já está instalado. Para testar, acesse a URL http://vol.local em seu navegador, caso esteja tudo funcionando normalmente, será exibida a seguinte tela:

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação
   3. Gerando um simples CRUD (Create, Read, Update e Delete)
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando Lamp Stack no Servidor Debian

Utilizando PHP para validar dados passados pelo usuário

Criando sites para celular com WML

Utilizando PHP e Apache para desligar um Ubuntu

Utilizando o Smarty template no PHP

  
Comentários
[1] Comentário enviado por nandodutra em 13/03/2012 - 09:37h

Olá, percebi que após a revisão dos moderadores o código do arquivo <b><i>/etc/apache2/httpd.conf</i></b> ficou desconfigurado, segue abaixo o código correto:

<VirtualHost *:80>
ServerName localhost
DocumentRoot "/var/www"
<Directory "/var/www">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName vol.local
DocumentRoot "/var/www/vol/web"
DirectoryIndex index.php
<Directory "/var/www/vol/web">
AllowOverride All
Allow from All
</Directory>

Alias /sf /var/www/vol/lib/vendor/symfony/data/web/sf
<Directory "/var/www/vol/lib/vendor/symfony/data/web/sf">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>

[2] Comentário enviado por removido em 16/03/2012 - 19:10h

Corrigido.

A Tag usada na formatação HTML para destacar o Script, causou conflito com os sinais '<' e '>'.


Quando houver problemas, reporte à Moderação.

Um abraço, Fernando.

[3] Comentário enviado por albertguedes em 17/03/2012 - 02:22h

Eu fiquei interessado no Symphony, mas uso a tempo o Zend.
É possível dizer quais vantagens e desvantagens sobre o Zend, ou pelo menos em qual ocasião o Symphoni é preferível ao Zend ?

[4] Comentário enviado por nandodutra em 17/03/2012 - 08:38h

albertguedes, gosto muito do Symfony devido a facilidade de aprendizado, comunidade ativa e colaborativa, documentação clara e concisa. infelizmente não posso te dizer as vantagens com relação ao Zend, isto por que nunca o usei, até já tentei, mas como na época precisava usar um Framework PHP com urgência acabei optando por usar o CakePHP, que possui uma curva de aprendizagem menor, então há mais ou menos um ano migrei para o Synfony e não me arrependo. Caso tenha alguma dúvida estou a disposição para ajudar.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts