Lighttpd php5 mysql no Ubuntu 11.04

Standard

Lighttpd é verdadeiramente uma bala no que tange a containers web. Muitas pessoas gostam dele (segundo a mídia até o Youtube já amou esse negócio), por isso estaremos indo direto ao assunto, vamos instalar essa bala no Ubuntu 11.04?

Temos que ter poder de root para fazer o negócio rodar (use sudo su ou su -, sendo su – melhor pois dá autoridade global):

apt-get update &&

apt-get install mysql-server mysql-client -y

Fazendo isto estaremos instalando o mysql server e seu client (inclusive no pacote vem a ferramenta replace, muito boa para substituir termos em um arquivo [depois falamos de utilitários em outro artigo]).

No momento seguinte o sistema vai pedir que você defina a senha de root:

New password for the MySQL … : Informe a senha de root
Repeat password for the MySQL …: Confirme novamente a senha

Vamos instalar o Lighttpd agora!

apt-get install lighttpd -y

Presumindo que você possui um ip setado a este pc (qualquer ip, se for por dhcp use ifconfig e veja o ip da sua eth0 ou ethX [sendo X ponto variável, podendo ser 1 para interface real secundária e assim por diante]) 10.0.0.1, abra o navegador e digite 10.0.0.1, deverá ser exibido um arquivo pedindo substituição de conteúdo, aonde o document root (pasta principal da web) fica em /var/www e o arquivo de configuração /etc/lighttpd/lighttpd.conf. As configurações extras ficam em /etc/lighttpd/conf-available . Se futuramente ativamos módulos extras podemos usar lighttpd-enable-mod para ativa-los. Os links simbólicos de comandos ficam em /etc/lighttpd/conf-enabled, mas o filé mesmo para edições e customizações é /etc/lighttpd/conf-available.

Hora de meter o php5 em modo fastcgi!

Vamos lá:

apt-get install php5-cgi

 

Para que tudo fique validado precisamos arrumar o esquema. Vamos editar o conf:

vim /etc/php5/cgi/php.ini

Devemos procurar pela linha:

cgi.fix_pathinfo

e mudar seu conteúdo para:

cgi.fix_pathinfo=1

Agora vamos ativar o módulo do php (claro que instalamos o mesmo para ser instância separada,  mas é um módulo):

lighttpd-enable-mod fastcgi

lighttpd-enable-mod fastcgi-php

Vamos conferir os links simbólicos paragarantir que tudo está ok entre os arquivos /etc/lighttpd/conf-enabled/10-fastcgi.conf , /etc/lighttpd/conf-available/10-fastcgi.conf,/etc/lighttpd/conf-enabled/15-fastcgi-php.conf e /etc/lighttpd/conf-available/15-fastcgi-php.conf :

ls -l /etc/lighttpd/conf-enabled

root@developer:~# ls -l /etc/lighttpd/conf-enabled
total 0
lrwxrwxrwx 1 root root 77 2011-05-25 7:46 10-fastcgi.conf -> ../conf-available/10-fastcgi.conf
lrwxrwxrwx 1 root root 78 2011-05-25 7:46 15-fastcgi-php.conf -> ../conf-available/15-fastcgi-php.conf
root@developer:~#

Vamos dar aquele reload sarado:

/etc/init.d/lighttpd force-reload

Vamos testar nosso sistema de containers?

vim /var/www/testes.php

Dentro dele colocarmos assim:

<?php

phpinfo();

?>

A abriremos o browser para ver se aparece a info do php com esse endereço: http://10.0.0.1/testes.php

Vamos dar suporte ao php para que o bichão possa usar o mysql sem stress?

apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Para validar todo o bando de mudanças façamos assim:

/etc/init.d/lighttpd restart

E para reconferir http://10.0.0.1/testes.php em seu navegador.

Thanks Guys!

😉

 

Nossas fontes:

 

Gnu/Linux e suas dificuldades na usabilidade (diversidade que pode matar)

Standard

Gnu/Linux sem dúvidas é a prática mais comum no mundo do Software Livre, em outras palavras, é o meio mais fácil e mais comum do mundo Open Source estar declarado em nosso dia-a-dia. Temos ferramentas de uso diário, que são open source e não percebemos, mas quando nos deparamos com o Gnu/Linux nós podemos afirmar – este realmente é free software (ainda que não tenhamos um conceito muito forte do que realmente é software livre, que muitos infelizmente interpretam como software gratuito). Isto, sem sombra de variação é muito fabuloso, pois este excelente sistema que já mostrou do que é capaz, e o melhor, deixou claro que tem seu código aberto para customizações e forks, estando disponível para qualquer pessoa, aonde quer que esteja.
Ao longo de 12 anos de convívio com o Gnu/Linux (tendo somente 5 anos como profissional neste ramo, prestando serviços, e outros 7 “ouvindo falar bem”) pude perceber algumas “metamorfoses” que não vieram e fixaram um conceito amigável de usabilidade.
Vou detalhar isto de maneira abrangente para que fique claro o que realmente desejo expor, a dificuldade na curva de aprendizado, devido a variações muito pesadas nas distribuições Gnu/Linux.
Em 1997 possuía um computador Pentium 133 mhz mmx 100% off-board e tenho um irmão que na época estava fazendo cursos da Conectiva (uma distribuição Gnu/Linux que tinha um corpo técnico que prestava consultoria e cursos), tendo assim um impulso forte para instalação desta distribuição, o que me fez “saber que existia um sistema operacional diferente do Windows 95”, sem contar que no ano seguinte o Macintosh havia se tornado “mais uma daquelas descobertas milenares”. Naquela “descoberta” ouvi falar que ele era Free Software, mas confesso que não fez diferença para mim.
Os anos se passaram, para ser mais preciso 7 anos, e depois de tantas tentativas de me familiarizar com “aquela tela preta, parecia de mais com o MS-DOS”, consegui instalar uma distribuição chamada Slackware. Levei a sério, e fui tomando gosto.
Na época o melhor guia, ou documentação brasileira disponível (ainda está disponível) é o perfeito e completo GuiaFoca, um manual do Gnu/Linux, baseado no Debian, mas operando de maneira simples e direta em outras distribuições.
Passei um ano estudando sem cessar este sistema operacional maravilhoso, o que me fez implementar algumas soluções baseadas em Software Livre no SENAC-PB, empresa que trabalhei durante 3 anos. Adquiri um conhecimento sólido nesta plataforma, mas com o passar do tempo necessitei partir para outras como Red Hat Enterprise, por exemplo, sem contar as distribuições desktop que estavam bombando nesta fase. Com a saída da antiga empresa para outra que prestava consultoria não obtive dificuldades em implementações para clientes, principalmente pelo fato do Slackware ser muito flexível e “bastante Unix”, não senti nada difícil nos primeiros meses.
Nesta etapa eu entendi quais os problemas que as distribuições Gnu/Linux sentiam, isto aos olhos do usuário final, por que o nível de curva de aprendizado torna-se alto quando entramos em uma distribuição comercial. Para que se tenha uma idéia, o CentOS (remasterização do Red Hat Enterprise, respeitando direitos autorais e imagens da instituição), caso seja instalado como servidor, com poucos pacotes default você não terá a ferramenta ifconfig disponível, mas espere, ifconfig é um utilitário disponível em todas as distribuições, isto é padrão, e nem todas usam o system-config. Quantas usam dpkg, apt ou aptitude? Quantas tem o RPM como gestor de pacotes? O Yum? O Yast, Yast2?
Sabemos que são particularidades em cada distribuição, e que tais particularidades visam a automatização de determinadas tarefas que comumente estão vinculadas com o sistema operacional que as implementam.
Neste momento entram as divergências em geral, pois entendemos que comandos básicos sempre serão respeitados, e que seus manuais são preservados de uma distribuição para outra, mas que nem sempre estão no mesmo lugar.
Localidades na árvore de estrutura de dados, nomes de arquivos de configuração, modalidade de configuração de rede a nível de arquivo e forma com que containers web trabalham é muito diversificada em cada distribuição. Isto dificulta no momento de colocar na cabeça de algum xiita de códigos fonte proprietários que o Gnu/Linux é bom!
Observem o estouro e magnitude de distribuições como Ubuntu e Fedora, a nível desktop, vejam o quão abrangentes e aceitáveis elas são, e o mais importante, o quão bem documentadas elas são, mas em uma suave visão diferenciada, tente usar os conceitos aprendidos em cada uma delas em um Gentoo, CentOs ou OpenSuse, talvez você não queira mais usar Gnu/Linux, ou melhor, fará distinção por conhecer todas as ferramentas/utilitários de uma e de outra não.
Deixo claro que o Gnu/Linux é a escolha certa para quem não quer dores de cabeça futuras, quer estabilidade e o melhor, segurança de suas informações garantidas por sistemas que têm geeks de milhares de lugares dedicando-se na provisão de códigos de altíssimo nível e de escalabilidade monstruosa.
Minhas recomendações para marinheiros de primeira viagem:

• Use Ubuntu/Fedora para desktop, principalmente o Ubuntu que permite upgrades de versão do Sistema Operacional de maneira mais segura,
• Use CentOs/Ubuntu/Slackware ou Debian em seus servidores, principalmente Ubuntu/Debian que permitem upgrades de versões sem maiores dores de cabeça,
• Use Ubuntu/Fedora em escritórios, principalmente por sua quantidade enorme de drivers (módulos) para impressoras e etc.

Existem outras distribuições Gnu/Linux que têm tido muito prestígio, como por exemplo cito o Mandrake, empresa que assumiu a Conectiva e que tem se destacado pela ampla gama de produtos e suporte de qualidade, sendo hoje conhecida como Mandriva. OpenSuse, outra distribuição muito respeitada, versão Grátis e de código fonte aberto, 100% baseada no Suse Enterprise, mantido pela comunidade open source do mundo inteiro, esta é bastante amigável também.
Lembre-se que uma distribuição deve primar por conceitos de segurança, estabilidade e alto desempenho, principalmente, deverá ser bem documentada, e trivialmente falando, documentada maciçamente sobre suas ferramentas em particular.
Gestores de pacotes também são algo que tornam a problemática maior, por que os pacotes .DEB e .RPM imperam, seguidos de seus gestores deb/apt/aptitude e RPM/up2date/yum. Sabemos que é simples compilar algo (em alguns casos, devido requerimento de paths para libs a situação poderá complicar-se) e ajustar paths de destino, mas nem tudo isto brilha aos olhos dos mantenedores de software, tanto pelo nível de dificuldade avaliado para compilações e geração de source pré-compilado na plataforma como pela simplicidade de gestão (upgrade, downgrade e patching em geral).
Quanto ao GuiaFoca, este ainda é a melhor alternativa em documentação Gnu/Linux (falando de maneira geral), mas não atenha-se ao mesmo pois as distribuições estão mudando e agora parecem que estão tomando “independência” ou pensam em seguir assim, longe de padrões LSB.
Aprender sempre é bom, mas não atenha-se a distribuições muito individualistas, isto poderá complicar sua vida em um futuro muito próximo, principalmente no que tange ciclo de vida da versão do sistema ou até descontinuidade do projeto adotado por você ou por sua empresa (vide distribuições como Kurumin que tinham excelente iniciativa, mas que estão agonizado neste momento, Conectiva – adquirida pela Mandrake e outras).

As particularidades excessivas das distribuições estão levando as distribuições que adotam esta modalidade de negócio/serviço para uma ilha de destaque e talvez solidão.

Muito cuidado com sua escolha!

Abraços a todos e bom trabalho/estudo.