2017-04-01 4 views
1

Je reçois "net :: ERR_CONNECTION_REFUSED" en attendant la réponse xhr. J'ai essayé d'utiliser l'API directement et ça marche bien. Je reçois mes réponses. De plus, lorsque je l'utilise via le proxy inverse nginx, mon API reçoit le POST, mais jquery ne récupère rien. Comme je l'ai dit, il le fait lors de l'utilisation http://ip:port ..

Ma config nginx lookes comme ceci:

upstream daffy { 
    server 127.0.0.1:4747; 
} 

server { 
    listen 80; 
    server_name daffy; 

    access_log /var/log/nginx/daffy.access.log; 
    error_log /var/log/nginx/daffy.error.log; 

    location /socket.io { 
     proxy_pass http://daffy/socket.io; 
     proxy_http_version 1.1; 
     proxy_buffering off; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "Upgrade"; 
    } 

    location /git/pull/ { 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; 
     proxy_redirect off; 
     proxy_set_header X-Forwarded-Proto https; 
     proxy_set_header Host $http_host; 
     proxy_pass http://daffy; 
    } 

    location/{ 
     allow 192.168.7.0/24; 
     deny all; 

     proxy_pass http://daffy; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header X-NginX-Proxy true; 
     proxy_set_header Host $http_host; 
     proxy_redirect off; 
    } 
} 

Nginx montre aucune erreur dans le journal d'erreur .. mais le journal d'accès n'enregistre pas la requête POST du tout.

nginx-1.11.12-1.el7.ngx.x86_64

Quelqu'un at-il une suggestion?

MISE À JOUR J'ai essayé de désactiver le pare-feu et d'activer le débogage dans mon journal des erreurs.

Nginx ne fournit vraiment rien dans le journal des erreurs avec le débogage.

Mais GET fonctionne très bien:

192.168.7.114 - - [02/Apr/2017:09:54:02 +0200] "GET /users/?_=1491119642698 HTTP/1.1" 200 570 "http://daffy/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" 

SELinux est désactivé.

Répondre

0

RÉSOLU !!

je devais changer mon back-end python pour revenir un peu plus vite que 2 secondes:

Popen(["/path/to/awesome.sh"], stdin=None,stdout=None,stderr=None) 

Avant que j'utilisais subprocess.check_call ou subprocess.call

Quoi qu'il en soit, je coupe de 2 secondes du retour de api :)