[Cascavel-pm] [OT]retornando conteúdo dinâmico no endereço principal do site

Eden Cardim edencardim em gmail.com
Terça Agosto 18 09:56:32 PDT 2009


2009/8/18 Fernando <fernandolouis em terra.com.br>:
> Como faço para minha página inicial retornar conteúdo dinâmico?
>
> Por exemplo, em www.meusite.com.br quero que me retorne junto algumas
> informações do meu banco de dados, só que eu só conseguiria se
> redirecionasse para um scrip .pl, por exemplo:
> www.meusite.com.br/cgi-local/script.pl
>
> Quero acessar www.meusite.com.br e que me retorne vários conteúdos
> dinâmicos.
>
> O mais correto é fazer isso com frame, com mod_rewrite, com ajax, ou por
> redicionamento? Ou há outra forma?

Todas as formas que você mencionou são hacks horrendos e devem ser
evitados sempre que possível. Presumindo que você está usando Apache +
CGI, lê a página que o Daniel te passou, lá tem tudo que você precisa
pra configurar o mod_cgi pra funcionar do jeito que você quer. Outra
alternativa com Apache é usar mod_perl
(http://search.cpan.org/~gozer/mod_perl-1.31/mod_perl.pod - que também
é um hack mas não tão horrendo quanto os outros), é bem simples de
usar e a documentação é bastante razoável. Um trecho extraído da
documentação e alterado pro teu caso:

na configuração do apache:

 <Location />
   SetHandler "perl-script"
   PerlHandler MyApp
 </Location>

no arquivo MyApp.pm:

package MyApp;

sub handler {
  my $r = shift;
  $r->print('Hello World on /');
}

Outra solução é usar http://www.fastcgi.com. Isso tudo requer que você
tenha um bom conhecimento do protocolo HTTP
(http://www.w3.org/Protocols/rfc2616/rfc2616.html).
Em última instância, a alternativa que eu recomendo é usar um
framework como Catalyst, Jifty ou CGI::Application, que já vêm com a
integração pronta pra CGI/mod_perl/FCGI em Apache ou qualquer outro
backend server que você quiser usar.

-- 
   Eden Cardim       Need help with your Catalyst or DBIx::Class project?
  Code Monkey                    http://www.shadowcat.co.uk/catalyst/
 Shadowcat Systems Ltd.  Want a managed development or deployment platform?
http://edenc.vox.com/            http://www.shadowcat.co.uk/servers/


Mais detalhes sobre a lista de discussão Cascavel-pm