Folks,
I’m trying to install a Node.JS application in a subfolder of a WordPress site running on Nginx, Varnish and php-fpm.
Any attempt to access the site gives a 502 Bad Gateway browser error and the following message in Nginx’s error log.
<pre> [error] 20247#0: *143 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: example.com, request: “GET /forum HTTP/1.1”, upstream: “http://127.0.0.1:4567/forum”, host: “example.com” </pre>
I’ve researched the cause of such error messages, but have yet to come up with a solution. It it helps, here’s my Nginx config:
<pre> server {
server_name example.com www.example.com;
root /home/public_html/;
listen 8080;
index index.html index.htm index.php;
include conf.d/drop;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
fastcgi_buffers 8 256k;
fastcgi_buffer_size 128k;
fastcgi_intercept_errors on;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
location ~* \.(css|js|png|jpg|jpeg|gif|ico)$ {
expires 1d;
}
location ^~ /forum {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:4567/forum;
proxy_redirect off;
# Socket.IO Support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
} </pre>
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
With node/nginx proxy and ajax requests get 502:
I fixed this issue by simply stopping and starting pm2 and ensuring only 1 pm2 process was running.
you need run the node proyect: <br> <br>/home/test/nodejs/ <br> >node server.js <br> <br>Remember: nodejs need run in diferent port at nginx. <br>How to node: http://nodejs.org/
As you can see from the config, the Node.JS app is running on port 4567, which is different from the Nginx port, running on a www port. <br> <br>The Node.JS application is started using Forever - “forever start app.js”. <br> <br>The thing is, without Nginx, I can access the app using the IP/URL of the main site and the Node apps port, like this: http://example.com:4567. <br> <br>But not via Nginx.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.