আমি ইউএনআইএক্স ডোমেন সকেটের মাধ্যমে একটি নোড.জেএস এইচটিটিপি সার্ভারের সাথে সংযোগ স্থাপনের জন্য একটি এনগিনেক্স সার্ভারটি কনফিগার করার চেষ্টা করছি।
Nginx কনফিগারেশন ফাইল:
server {
listen 80;
location / {
proxy_pass http://unix:/tmp/app.socket:/;
}
}
( http://wiki.nginx.org/HttpProxyModule#proxy_pass অনুসারে )
নোড.জেএস স্ক্রিপ্ট:
var http = require('http');
http.createServer(function(req, res) {
console.log('received request');
req.end('received request\n');
}).listen('/tmp/app.socket');
এখন, যখন আমি কল করার চেষ্টা করি
curl http://localhost/
আমি 502 টি খারাপ গেটওয়ে ত্রুটি পৃষ্ঠাটি কার্ল অবস্থায় পেয়েছি এবং নোড.জেএস প্রক্রিয়াতে কিছুই নেই।
আমি কি ভুল কিছু করছি?
সম্পাদনা:
কোয়ান্টার সমাধানটি চেষ্টা করার পরে, ভুলটি অবশ্যই এনগিনেক্স কনফিগারেশনের সাথে করতে হবে, যেহেতু নোড.জেএস প্রক্রিয়াটি সকেটের সাথে সংযোগটি সঠিকভাবে প্রতিষ্ঠিত করে।
আমি এনগিনেক্সকেও এভাবে কনফিগার করার চেষ্টা করেছি:
upstream myapp {
server unix:/tmp/app.socket;
}
server {
listen 80;
location / {
proxy_pass http://myapp;
}
}
তবে এটিও কার্যকর হয়নি।
BTW আমি Nginx v1.0.6 ব্যবহার করছি।
নিগিনেক্সে ত্রুটি লগতে নিম্নলিখিতটি লেখা হচ্ছে, যখন আমি দ্বিতীয় কনফিগারেশন ব্যবহার করি
2011/09/28 13:33:47 [crit] 1849#0: *5 connect() to unix:/tmp/app.socket failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", upstream: "http://unix:/tmp/app.socket:/", host: "localhost:80"