Arquivos da categoria: Webservers

NGINX 413 Request Entity Too Large Error

Me deparei com uma "merendagem" na configuração do NGINX (nginx 413 request entity too large). Tentava enviar um arquivo encodado na base64 para um servidor recém inaugurado quando encontrei dificuldades para enviar alguns arquivos.  De inicio imaginei que pudesse ser um problema na origem, do servidor que estava enviando, debugando descobri que o CURL estava dando timeout por conta do enorme tamanho do arquivo e da pequena banda larga, resolvido neste post.

Depois de resolver esse problema, o arquivo continuava a não subir, até que analisando o log de retorno vi a linda mensagem: 413 Request Entity Too Large Error and Solution Continue lendo

PHP-CGI query string parameters vulnerabitily

Uma massa de emails que lotou o espaço em disco do HD de um dos servidores da empresa em qual trabalho foi o que motivou esse post. Na verdade o fim do espaço em disco me levou a encontrar um BUG no PHP-CGI 5.2.6 que levava a execução de código arbitrário a partir dos parâmetros de linha de comando. Ou seja com o comando

http://localhost/index.php?-s

Você obtém o conteúdo do código PHP. Isso é muito bizarro!

1. O que estava acontecendo?

Uma massa de emails de spam estavam sendo enviados como sendo da Fedex, identificamos esses emails e paramos o Postfix. No momento em que paramos, observamos a crescente fila de email e o decrescente espaço em disco.

Localizamos o foco da invasão, um dos sites que administramos estava com permissão na pasta e nos arquivos de usuário e grupo para o www-data. E o spammer havia criado um arquivo chamado pagenews.php e umas variações de w98089n.php (w[0-9]{1,8}n.php, mais ou menos isso).
Continue lendo

Alterando o arquivo index com .htaccess

Um ponto no Apache que é muito útil é o .htaccess. Que são configurações do próprio Apache que podem ser usadas em diretórios para sobrescrever as configuração padrão.
Quando você navega em um site, que usa o Apache, e não define o arquivo que quer acessar (como por exemplo: http://thiagosantos.com/blog/ ao invés de http://thiagosantos.com/blog/index.php) o Apache procura pelo arquivo padrão do diretório.
Se requisitarmos a URL http://thiagosantos.com/blog/ o Apache vai procurar pelo arquivo padrão para essa pasta que nesse caso é o arquivo index.php, logo acessar http://thiagosantos.com/blog/http://thiagosantos.com/blog/index.php dá no mesmo.
Normalmente o Apache está configurado da seguinte forma:
DirectoryIndex index.html index.php index.htm default.htm

URL rewrite no IIS

Hoje ( 25 de abril, 03:00 am), estava eu apanhando feio do IIS pra tentar colocar as URLs amigaveis do WordPress, eis que me surge uma iluminação divina, pode parecer até mentira, mas colocar URLs amigavel no IIS ficou mole igual ao "mod_rewrite" do Apache.  Para aqueles, assim como eu, por algum motivo estão usando o WordPress no IIS e não consegue usar as URLs amigaveis, já que o IIS não lê os mods do apache, esta é a saida, e melhor gratuita!

O programa você pode baixar aqui: http://www.helicontech.com/download-isapi_rewrite3.htm

E o passo a passo de como instalarhttp://www.kylecaulfield.com/permalink-for-wordpress-iis-6-mod_rewrite-fixed-free

Como eu só precisava de um único blog rodando, a versão gratuita me caiu como uma luva sendo a parte "chata" que o rewrite fica no httpd.conf do na pasta do ISAPI Rewrite 3, e os nossos famosos .htaccess só funcionam na versão paga. Pra quem for colocar mais de um blog sob o mesmo dominio vai pagar U$25 e o server está saindo por U$95, e mesmo assim ta valendo muito a pena.

Funcionou comigo rodando no Windows 2003.

Até mais.
[atualizado - 25/04/2010]
Solução bem mais simples e gratuita para o IIS 7 por Pablo Weyne no comentário:

"No IIS7 basta instalar o URL Rewrite utilizando o Web Platform Installer (http://www.microsoft.com/web/downloads/platform.aspx) que resolve o problema.[...] "