انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => شبکه و سرویس‌ دهنده‌ها => نویسنده: elyas74 در 15 شهریور 1393، 04:54 ب‌ظ

عنوان: پیکربندی nginx برای پروژه node.js (حل شد)
ارسال شده توسط: elyas74 در 15 شهریور 1393، 04:54 ب‌ظ
 - من یک پروژه node.js دارم که برای مثال روی پورت ۳۰۰۰ در حال اجراست، چطور میتونم از nginx برای کنترل ترافیک این پروژه استفاده کنم.

 - توضیحات تکمیلی : در سایت های مختلفی راه های مختلفی بود که مفید نبود(یا حداقل من درست متوجه نشدم)، برای مثال لینک های زیر :
http://stackoverflow.com/questions/5009324/node-js-nginx-and-now/ (http://stackoverflow.com/questions/5009324/node-js-nginx-and-now/)
http://nginx.com/blog/websocket-nginx/ (http://nginx.com/blog/websocket-nginx/)

 - ممنون میشم از دوستان اگه ایده ای دارن ارائه بدن.
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 15 شهریور 1393، 05:50 ب‌ظ
همون لینک اولی توضیحات کافی داده دیگه، مشکل چیه؟
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 15 شهریور 1393، 07:39 ب‌ظ
 - مشکل اینه که بعد از انجام دادن کارهایی که در همون لینک گفته شده نمیتونم در http://localhost ببینم پروژه رو و همچنان به صفحه Welcome to nginx on Fedora! فرستاده میشم.حتما باید دامنه ست شده باشه؟(چون من دارم با یک اسم دامنه برای تست فعلا پیش میرم)
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 16 شهریور 1393، 01:06 ق‌ظ
خروجی این دستور چیه؟
ls /etc/nginx/sites-enabled/
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 16 شهریور 1393، 02:36 ب‌ظ
خروجی این دستور چیه؟
ls /etc/nginx/sites-enabled/
- همون لینکی هست که بوجود آوردم(طبق همون آموزش)(sim هم اسم پروژه هست)
lrwxrwxrwx. 1 root root 30 Sep  6 19:20 sim -> /etc/nginx/sites-available/sim

 - این هم محتویاتش :
upstream app_yourdomain {
    server 127.0.0.1:3000;
}


server {
    listen 0.0.0.0:80;
    server_name sim.com sim;
    access_log /var/log/nginx/sim.log;

    location / {
      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://app_yourdomain/;
      proxy_redirect off;
    }
 }

عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 16 شهریور 1393، 09:36 ب‌ظ
فقط همون یک فایل اونجا هست؟
در ضمن، server_name اسم هاست‌هایی هست که از طریق اون می‌تونید این صفحه رو ببینید. یعنی اگر می‌خواید از طریق localhost اون رو ببینید، باید localhost هم اونجا اضافه کنید.
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 16 شهریور 1393، 09:54 ب‌ظ
فقط همون یک فایل اونجا هست؟
در ضمن، server_name اسم هاست‌هایی هست که از طریق اون می‌تونید این صفحه رو ببینید. یعنی اگر می‌خواید از طریق localhost اون رو ببینید، باید localhost هم اونجا اضافه کنید.

 - بله فقط همون یک فایل هست.
 - localhost رو اضافه کردم به قسمت server_name ولی همچنان صفحه پیش فرض nginx روی پورت ۸۰ است.
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 16 شهریور 1393، 10:11 ب‌ظ
چطوری nginx رو ریستارت کردی؟
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 17 شهریور 1393، 12:15 ق‌ظ
چطوری nginx رو ریستارت کردی؟
sudo systemctl restart nginx.service
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 17 شهریور 1393، 01:03 ق‌ظ
توی این صفحه چی می‌بینید؟
http://localhost/?
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 17 شهریور 1393، 08:45 ق‌ظ
توی این صفحه چی می‌بینید؟
http://localhost/?
- هیچی، unable to connect ... ،عکس هاشون رو هم گزاشتم.
 - لازم نیست فایل etc/nginx/nginx.conf/  رو تغییر بدم؟
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: nixoeen در 17 شهریور 1393، 09:14 ق‌ظ
اون چیزی که توی localhost می‌بینی تنها یک Cache از صفحه اولی هست که قدیم باز کردی، nginx اصلا به درستی راه نیفتاده.
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 17 شهریور 1393، 07:53 ب‌ظ
اون چیزی که توی localhost می‌بینی تنها یک Cache از صفحه اولی هست که قدیم باز کردی، nginx اصلا به درستی راه نیفتاده.
- حق با شما بود، حالا که درست اجراش کردم در آدرس ?/localhost صفحه زیر میاد. و همچنان در آدرس localhost همون صفحه قبلی.
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js
ارسال شده توسط: elyas74 در 01 آبان 1393، 03:53 ب‌ظ
 - نهایتا این موضوع حل شد و باید توی آدرس زیر(مثلا فایلی به نام site_name.conf)
/etc/nginx/conf.d/site_name.conf - همچین محتوایی داشته باشم :
server {
    listen 80;
    server_name localhost ;
    access_log /var/log/nginx/3000.log;

    location / {
      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:3000;
      proxy_redirect off;
    }
 }
عنوان: پاسخ : پیکربندی nginx برای پروژه node.js (حل شد)
ارسال شده توسط: elyas74 در 21 بهمن 1393، 09:53 ب‌ظ
 - بعد روی یک سرور دیگه به مشکل خوردم که نهایتا فهمیدم selinux اجازه دست رسی به nginx روی پورت های مورد نظرُ نمیداد. توی این لینک (http://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx) کاملا توضیح داده داستان چیه.