اگر `nodeJs` کار میکنید و رو سرورتون `NginX` نصب دارید یا نصب خواهید کرد بخش دوم این مطلب مال شماست و اگر سرورتون `CentOs` هست بخش اول هم کاربرد میتونه داشته باشه براتون.

بخش اول: نصب `node` روی `CentOs`

ما اینجا سورس کد نود‌جی‌اس رو دانلود و نصب میکنیم، ابتدا باید سیستم رو برای عملیات کامپایل و ساخت و نصب آماده کنیم، پس:

``` yum -y update yum -y groupinstall "Development Tools" ```

حال که کامپایلر `C++` و مشتی ابزار دیگه رو داریم نود رو دانلود میکنیم

``` cd /usr/src wget http://nodejs.org/dist/v0.12.2/node-v0.12.2.tar.gz tar zxf node-v0.12.2.tar.gz cd node-v0.12.2 ```

بریم سراغ کانفیگ کردن و کامپایل سورس کد

``` ./configure make ```

دستور `make` ممکنه چندین دقیقه‌ای با روح و روان سی‌پی‌یو شما بازی کنه، زیاد نگران نباشید :) حال باید فایل‌های کامپایل شده رو به جای اصلی اونها انقال بدیم که عملیات نصب کامل بشه

``` make install ```

از اینجا به بعد دیگه `NodeJS` روی سرور شما نصب شده، میتونید هرکاری که برای راه‌اندازی وب‌سرور لازمه رو انجام بدید، مثلا `express` نصب کنید و ... اینجا به نحوه ساخت وب‌سرور با نود نمی‌پردازیم، فقط فرض کنیم که وب‌سرورمون رو روی پورت 3000 ایجاد کردیم

بخش دوم: تنظیمات `NginX` برای `node`

وقتی سرور نود خودتون رو ایجاد میکنید میتونید براحتی از آدرس http://yourdomain:3000 اون رو ببینید ولی همانطور که میبینید این آدرس چندان مناسب نیست و بهتر است بخش `:3000` را حذف کنیم، مثلا آن را بصورت یک زیردامنه دربیاوریم. http://node.yourdomain برای اینکار می بایست یک پروکسی به نود ایجاد کنیم.

``` nano /etc/nginx/conf.d/mynodeserverconfig.conf ```

درون فایل فوق کد زیر را قرار داده و آن را ذخیره می کنیم

``` upstream http_nodes { server 127.0.0.1:3000; }

server {
server_name node.yourdomain;
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://http_nodes;
}
}

<p>درصورتی که میخواهید `web socket` را نیز پشتیبانی کنید کد زیر را درون بخش `location {}` اضافه کنید.</p>
<strong>!!! دقت کنید که حتما نسخه `NginX` شما بیشتر از `1.3.13` باشد</strong>

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";