Nginx e php5-fpm

Eu precisava rodar no meu servidor uma aplicação PHP, sem que isso despendesse muito esforço e tempo em configurações complicadas, mas que ao mesmo tempo fosse flexível o suficiente para compartilhar o webserver com outras aplicações que rodam em Python.

A solução foi usar o php-fpm, que para minha alegria está no repositório do Ubuntu 12.10. A ideia é instalar o pacote php5-fpm e configurar a diretiva fastcgi_pass no Nginx. Eu fiz o seguinte para começar com uma configuração básica:

Pode ser que ao invés de um arquivo sock, o php5-fpm esta rodando em uma porta TCP, pois depende de como ele vem pré-configurado. Neste caso a configuração da diretiva fastcgi_pass pode ser um pouco diferente, como a seguinte:

Para descobrir isso você pode consultar o arquivo de configuração do php-fpm em /etc/php5/fpm/pool.d/www.conf, procurando pela linha que começa com listen.

Depois desses passos consegui uma página imprimindo ‘oi mundo’ em http://teste.montefuscolo.com.br/.

Referências

O ‘git revert’

Eu precisava fazer com que minha cópia local do git ficasse com o conteúdo igual estava há uns 4 commits atrás. Esses 4 commits no meio do caminho já estavam no servidor remoto, então não posso simplesmente jogá-los fora. Então tive de aprender o comando ‘git revert‘.

O ‘git revert‘ cria um ou mais commits com as alterações que desfazem o conteúdo dos commits indesejados. Abaixo escrevi sequências de códigos que ilustram o uso ‘git revert‘.

Desfazendo 1 commit

Quero desfazer o commit 23a10ce que cria o arquivo de nome “CCC”.

Desfazendo um conjunto de commits

Quero desfazer desde agora (HEAD) até o commit 23a10ce. Vão sobrar em meu diretório os arquivos AAA e BBB.

O ‘git revert’ não volta na história nem reposiciona ponteiros, como faz o ‘git reset’. Ao invés disso, o ‘git revert‘ desfaz alterações que estão no histórico de commits. As alterações feitas pelo ‘git revert‘ podem ser vistas através do log.

Referências

  • https://www.kernel.org/pub/software/scm/git/docs/git-revert.html

Login gráfico automático sem Desktop Manager

Para conseguir um login automático e executar também automaticamente o gerenciador de janelas favorito, não é necessário usar um Desktop Manager. Basta personalizar alguns scripts do sistema.

Eu comecei meu ambiente com o Ubuntu Server 12.10 e o gerenciador de janelas Awesome. Provavelmente os passos a seguir devem ser semelhantes para outras distribuições e o Awesome pode ser trocado por outro gerenciador de janelas.

1. Instalação do awesome e do pacote que provê o startx

2. Configurar o gerenciador de login para logar automaticamente no tty6

Onde estiver:

Trocar por:

3. Editar o arquivo .profile para automatizar o início do comando startx

4. Editar o arquivo .xinitrc para informar que o Awesome deve ser executado pelo startx

Referências