ahoy,
Estou executando o wordpress 3x no nginx e todas as minhas chamadas ajax são interrompidas. o mesmo wordpress funciona bem no Apache.
Corrigi de alguma maneira uma chamada ajax para trabalhar com o nginx removendo "index.php" de todas as chamadas jquery.post (), mas não consegui corrigir as outras chamadas da mesma maneira.
basicamente as mudanças foram: para nginx a linha:
jQuery.post( "index.php?ajax=true", form_values, function(returned_data) {
foi substituído por:
jQuery.post( "?ajax=true", form_values, function(returned_data) {
Eu suspeito que o problema está no arquivo de configuração nginx com regras de reescrita. Lá está você com minha configuração
if (!-e $request_filename) {
rewrite ^.+/?(/wp-.*) $1 last;
rewrite ^.+/?(/.*.php)$ $1 last;
rewrite ^(.+)$ /index.php?q=$1 last;
}
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /xxx/public$fastcgi_script_name;
include fastcgi_params;
}
}
Respostas:
1 para resposta № 1Será que você está em um diretório ou diretório "virtual" no URL do navegador?
Se, por exemplo, você estiver em www.myblog.com, isso deve funcionar, mas em www.myblog.com/my-category/my-post/ provavelmente não funcionaria.
Você fez seu teste exatamente no mesmo local do URL no site Apache e no site Nginx?
Você já tentou com uma barra na frente do caminho para garantir que ele seja chamado de script raiz?
jQuery.post( "/index.php?ajax=true", form_values, function(returned_data) {