انجمن تخصصی ایران سرور
راه اندازی nginx در ویندوز فقط در چند دقیقه - نسخه قابل چاپ

+- انجمن تخصصی ایران سرور (https://forums.irserv.ir)
+-- انجمن: بخش آموزشی (https://forums.irserv.ir/Forum-%D8%A8%D8%AE%D8%B4-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C--1)
+--- انجمن: بخش سرورها ( سخت افزار ها ، نرم افزارها ) (https://forums.irserv.ir/Forum-%D8%A8%D8%AE%D8%B4-%D8%B3%D8%B1%D9%88%D8%B1%D9%87%D8%A7-%D8%B3%D8%AE%D8%AA-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1-%D9%87%D8%A7-%D8%8C-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%D9%87%D8%A7--53)
+---- انجمن: متفرقه ( آموزشی ) (https://forums.irserv.ir/Forum-%D9%85%D8%AA%D9%81%D8%B1%D9%82%D9%87-%D8%A2%D9%85%D9%88%D8%B2%D8%B4%DB%8C--57)
+---- موضوع: راه اندازی nginx در ویندوز فقط در چند دقیقه (/Thread-%D8%B1%D8%A7%D9%87-%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C-nginx-%D8%AF%D8%B1-%D9%88%DB%8C%D9%86%D8%AF%D9%88%D8%B2-%D9%81%D9%82%D8%B7-%D8%AF%D8%B1-%DA%86%D9%86%D8%AF-%D8%AF%D9%82%DB%8C%D9%82%D9%87--539)



راه اندازی nginx در ویندوز فقط در چند دقیقه - saz - Wednesday 24 September 2014

راه اندازی nginx در ویندوز فقط در چند دقیقه

با سلام خدمت دوستان عزیز
مطمئنن خیلی از عزیزان دوست دارند سروز ویندوزی داشته باشند که هم برای کارهای اپلود و دانلود و هم به عنوان هاست دانلود با nginx برای داشتن سروری با سرعت بالا و وب سرور پایدار .

شروع نصب :

گام اول : دانلود اخرین نسخه پایدار ویندوزی nginx از لینک های زیر بسته به نسخه سیستم عامل مورد نظر و نصب ان


کد:

نکته : nginx در مسیر پیش فرض یعنی c:\nginx نصب شود.

گام دوم : دانلود فایل php فشرده از سایت و اکسترکت ان در مسیر زیرمقابل c:\nginx\php به طوری که c:\nginx\php\php-cgi.exe در این مسیر قرار بگیره .

گام سوم : فایل مقابل رو باز کرده c:\nginx\conf\nginx.conf و علامت های # رومشابه زیر بر دارید و یا بصورت دلخواه مشابه زیر تغییر بدین :

کد:

location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME c:/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}

گام چهارم : ساخت فایل های فعال و غیرفعال کردن nginx

1 . در مسیر فوق فایل start-nginx.bat رو باز کنید و بصورت زیر تغییر بدین (خط قرمز اضافی میشه) :


کد:

@ECHO OFF
c:\nginx\nginx.exe
c:\nginx\php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
ping 127.0.0.1 -n 1>NUL
echo Starting nginx
echo .
echo .
echo .
ping 127.0.0.1 >NUL
EXIT
2 . در ادامه stop-nginx.bat رو باز کنید و بصورت زیر تغییر بدین (خط قرمز اضافی میشه) :


کد:

@ECHO OFF
taskkill /f /IM nginx.exe
taskkill /f /IM php-cgi.exe

EXIT

وب سرور شما برای کار اماده میباشد. موفق باشید

در صورتی که به اندازه کافی تشکر دریافت کنم . راه اندازی nginx بر روی Xammp هم اموزش میدم .امیدوارم با تشکر های خودتون بنده رو تشویق به نوشتن اموزش های بهتری کنید


RE: راه اندازی nginx در ویندوز فقط در چند دقیقه - saz - Wednesday 24 September 2014

nginx در حالت پیش فرض زیاد جالب نیست پس ادامه میدیم با کانفیگ بهتر nginx
البته اساتید انجمن هم میدونند ولی امروز چند مورد اصلی رو میخوام بهتون مطرح کنم

در فایل nginx.conf موارد زیر رو باید تغییر بدیم
1. اول اندازه worker_processes رو برابر با تعداد هسته سرور مود نظر خود قرار بدین .

کد:

worker_processes 1;

3. حداکثر تعداد بازدید کاربران در nginx بصورت فرمول زیر محاسبه میشه پس باید تغییراتی در سرور همچنان انجام بدیم

کد:

max clients = worker_processes * worker_connections
3. اگر یک سایت خیلی پر بازدید دارید worker_connections در حالت پیش فرض جالب نیست که اگر سرور خوبی دارید به مقدار زیر تغییر بدین :

کد:

worker_connections = 10240;
4. نیاز داریم تا حداکثر تعداد فایل بازشونده توسط worker_process رو افزایش بدیم که بصورت پیش فرض در فایل nginx.conf نمی بینیم پس در زیر worker_processes متن زیر رو قرا میدیم:

کد:

worker_rlimit_nofile 100000;
حالا میتونید nginx رو Stop و Start کنید . مطمئنن با همین تغییرات کم نتیجه خوبی خواهد گرفت.
موارد بالا در سرور لینوکس هم میتونید انجام بدید . و برای اینکه از تعداد هسته cpu خود در سرور لینوکس مطلع بشین از دستور زیر استفاده میکنیم :

grep processor /proc/cpuinfo | wc -l


RE: راه اندازی nginx در ویندوز فقط در چند دقیقه - saz - Wednesday 24 September 2014

به کانفیگ Nginx برای سایت های دانلود ادامه میدیم

خوب بعضی وقت ها مشکلی داریم که برای خیلی از دوستان پیش میاد که وقتی فایلی میخواهید دانلود کنید بعد از کلیک بر روی فایل مدتی طول میکشه تا فایل شروع به دانلود بشه . برای کم کردن این مدت زمان
دوباره در فایل nginx.conf بدین صورت داخل http {قرار می دیدم

کد:

keepalive_timeout = 30s;
keepalive_disable none;
خوب برای سایت های دانلودی gzip رو باید غیر فعال کرده و gzip static رو فعال کنیم :

کد:

#gzip off;
gzip_static on;
برای بهبود مورد کش در وب سرور موارد زیر رو اضافی میکنیم :


کد:

open_file_cache max=1000 inactive=2h;
open_file_cache_errors on;
open_file_cache_min_uses 1;
open_file_cache_valid 1h;
output_buffers 1 512;
postpone_output 1440;
read_ahead 512K;
دوباره stop و استارت میکنیم.

امیدوارم با تغییراتی که فعلا اموزش داده شده دوستان نتیجه مطلوبی گرفته باشند