Implementando servidor de aplicações PHP utilizando Zend Framework

Esse mega artigo aborda todos os conceitos técnicos e práticos para a implementação de um servidor de aplicações PHP utilizando framework Zend, incluindo detecção de intrusão e entre outros conceitos. Vale a pena conferir.

[ Hits: 133.950 ]

Por: José Cleydson Ferreira da Silva em 27/04/2010


Script para a criar a estrutura de diretório do MVC



O Zend Framework possui um utilitário que se encarrega de criar o projeto com todos os diretórios do padrão MVC. Dentro do diretório /usr/share/Zend/ZendFramework/bin encontra-se o arquivo zf.sh, ele possui vários parâmetros que podem contextualizar diferentes ações, bem como, criar projetos, View, Controller, Action e entre outros. Se executarmos o comando "sh zf.sh --help" dentro do diretório /usr/share/Zend/ZendFramework/bin, teremos todas ações que o script faz, podemos ver-las no quadro abaixo.

Zend Framework Command Line Console Tool v1.9.5
Usage:
    zf [--global-opts] action-name [--action-opts] provider-name [--provider-opts] [provider parameters ...]
    Note: You may use "?" in any place of the above usage string to ask for more specific help information.
    Example: "zf ? version" will list all available actions for the version provider.

Providers and their actions:
  ProjectProvider
    zf create project-provider name actions

  Profile
    zf show profile

  Project
    zf create project path name-of-profile file-of-profile
    zf show project
    Note: There are specialties, use zf show project.? to get specific help on them.

  View
    zf create view controller-name action-name-or-simple-name

  Controller
    zf create controller name index-action-included[=1] module

  Action
    zf create action name controller-name[=index] view-included[=1] module

  Module
    zf create module name

  Version
    zf show version mode[=mini] name-included[=1]
    Note: There are specialties, use zf show version.? to get specific help on them.

  Phpinfo
    zf show phpinfo

  Manifest
    zf show manifest

Podemos criar um subdiretório estrutura, dentro do home do usuário dsi ou no diretório usuário onde estão sendo desenvolvidas as aplicações. Criaremos um script para gerar todos os projetos de aplicações, portanto dessa forma com um simples comando podemos poupar boa parte do tempo criando diretórios e arquivos com o mesmo nome. Crie um arquivo com o nome gera-proj-zend e adicione o conteúdo abaixo.

#!/bin/sh
if ls /home/usuario/sistemas/desenvolvimento/$1
then
   echo Não foi possível gerar projeto com nome '$1': a pasta '/home/usuario/sistemas/desenvolvimento/$1/' já existe.
   exit 0
elif ls /home/usuario/sistemas/producao/$1
then
   echo Não foi possível gerar projeto com nome '$1': a pasta '/home/usuario/sistemas/producao/$1/' já existe.
   exit 0
fi
sh /usr/share/Zend/ZendFramework/bin/zf.sh create project /home/usuario/sistemas/desenvolvimento/$1 $1 $1
mkdir /home/usuario/sistemas/producao/$1
cat /home/usuario/sistemas/desenvolvimento/$1/public/.htaccess > /home/usuario/sistemas/desenvolvimento/$1/public/.htaccess-producao
echo RewriteBase /~dsi/$1/ >> /home/usuario/sistemas/desenvolvimento/$1/public/.htaccess-producao

echo RewriteBase /~dsi/desenvolvimento/$1/ >> /home/usuario/sistemas/desenvolvimento/$1/public/.htaccess
cd /home/dsi/public_html/desenvolvimento/
ln -s /home/usuario/sistemas/desenvolvimento/$1/public/ $1
cd -
cd /home/dsi/public_html/
ln -s /home/usuario/sistemas/producao/$1/public/ $1

Esse script analisa se o projeto já existe, caso contrário ele usará o script padrão do zend (zf.sh), para criar o projeto. Neste projeto inclui-se arquivo .htaccess e o link simbólico para a pasta public_html.

Para gerar um novo projeto é necessário rodar o script seguido do nome do projeto a ser criado:

# ./ gera-proj-zend nome_do_projeto
ou
# sh gera-proj-zend nome_do_projeto

Página anterior     Próxima página

Páginas do artigo
   1. Índice
   2. Introdução
   3. Sobre Zend Framework
   4. Particionamento
   5. Instalação do Servidor Web
   6. Habilitando o módulo mod_rewrite
   7. Habilitando o módulo mod_userdir
   8. Instalando Zend Framework
   9. Testando Zend Framework
   10. Padrões de diretórios para aplicações do Zend Framework
   11. Script para a criar a estrutura de diretório do MVC
   12. Configurando restrição de acesso
   13. Configurando Virtual Host
   14. Padronizando o formato dos registros em arquivos de log
   15. Suporte a conexões seguras com SSL
   16. Configurando exibição de erros
   17. Liberando acesso a ftp
   18. Rotinas de backup
   19. Ferramenta para detecção de intrusão (opcional)
   20. Acelerando o PHP (opcional)
   21. Considerações finais
Outros artigos deste autor

Como migrar banco de dados MySQL para PostgreSQL

Compiz e as estações do ano

Compiz - Conhecendo a fundo II

Elaborando vídeo-aula no Linux com Gtk-recordMydesktop

Novidades e mudanças na estrutura e configuração do Grub2, fique por dentro!

Leitura recomendada

Instalar o AWN no Ubuntu Hardy Heron

Aplicativos Linux para o dia-a-dia

Instalação do Gnuteca - Sistema de Biblioteca Livre

Integrando Nagios e Google Maps

Produzindo um "reality show" com seu Linux

  
Comentários
[1] Comentário enviado por viniciusgnu em 27/04/2010 - 08:47h

Meu velho, como sempre está de parabéns! "Keep up with the good work"!
Abraço

[2] Comentário enviado por cleysinhonv em 27/04/2010 - 08:50h

Valeu Vinicius!

Como sempre "procurar" / "tentar" / "me esforçar" em publicar artigos completos que ajudem a comunidade como um todo!

[3] Comentário enviado por uberalles em 27/04/2010 - 11:00h

Que "putza" app server bacana!! Muito bem detalhado seu artigo e passo a passo.

[4] Comentário enviado por cleysinhonv em 27/04/2010 - 11:33h

Olá Andre Miguel,

Bacana né! Procurei Explicar de forma clara e detalhar o máximo possível! Acredito que este material irá ajudar muitas empresas e pessoas que queiram implemetar esse tipo de solução!

Um abraço!

[5] Comentário enviado por valterrezendeeng em 27/04/2010 - 13:04h

Muito Bom o Artigo
Bem Feito e completo

Parabéns !!!!


Abraço

[6] Comentário enviado por razgriz em 27/04/2010 - 13:10h

Belo artigo Kurumin, continue assim!

[7] Comentário enviado por cleysinhonv em 27/04/2010 - 13:16h

Olá valter! Olá Prof. RazGriz!

Obrigado! Fico grato e com sentimento de dever cumprido. Espero que esse artigo possa ajuda-los de alguma forma, utilize-o e indique-o a quem precisar!

Um abraço!


Contribuir com comentário