Nginx + WordPress: 414 Request-URI Too Long

5

Eu uso o Nginx com php-fpm no meu servidor para executar o meu blog Wordpress.

Quando alguém compartilha meu site no Facebook, alguns parâmetros são adicionados pelo Facebook e a URL se parece com:

link

Eu verifiquei meus registros e tenho um "414 Request-URI Too Long" com essa solicitação. Eu tento adicionar large_client_header_buffers no meu arquivo de configuração Nginx, mas sem resultado.

No entanto, se você usa apenas o URL normal ( link ), tudo funciona corretamente.

Aqui está o meu arquivo de configuração:

server {
    listen          443;
    server_name     jp.rlauzier.com;

    ssl on;
    ssl_certificate         /etc/nginx/ssl/jp.rlauzier.com.crt;
    ssl_certificate_key     /etc/nginx/ssl/jp.rlauzier.com.key;

    include /var/www/jp.rlauzier.com/public_html/nginx.conf;

    location / {
            root   /var/www/jp.rlauzier.com/public_html/;
            index  index.php index.html index.htm;

            if ($request_uri ~* \.(ico|css|js|gif|jpe?g|png)$) {
                    expires max;
                    break;
            }

            try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
            root           /var/www/jp.rlauzier.com/public_html/;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
    }

    location ~ /(\.|wp-config.php|nginx.conf|readme.html|license.txt) {
            return 404;
    }
}

server {
    listen       80;
    server_name  jp.rlauzier.com rlauzier.com;

    rewrite     ^ https://jp.rlauzier.com$request_uri? permanent;
}
    
por Jean-Philippe Rivard Lauzier 05.07.2013 / 03:33

2 respostas

2

Encontrou o culpado ... Melhor Plugin de Segurança do WP!

Existe uma opção para limitar o tamanho das URLs.

No entanto, este plugin é incrível, mas adiciona muitos ajustes para proteger uma instalação do Wordpress por padrão.

Obrigado por sua ajuda!

    
por 07.07.2013 / 18:04
3

De em algum lugar na internet :

Most likely you are trying to configure client_header_buffer_size/large_client_header_buffers in a pure virtual server{}. This won't work as request headers parsing happens before Host header is known (and virtual server isselected), hence parseing happens in a context of the default server for a listen socket.

You have to configure client_header_buffer_size/large_client_header_buffers in a default server (or at http level).

    
por 06.07.2013 / 20:41