اگر با دنیای وب سروکار دارید و همواره به دنبال تحقیق و تفحص در زمینه بهینه سازی سرعت وب سایت هستید، یکی از پیشنهادات متخصصین آذرسیس استفاده از وب سرور Nginx برای افزایش سرعت سایت است. Nginx در مقایسه با سایر وب سرور ها به دلیل داشتن سرعت زیاد و قابلیت مدیریت هزاران اتصال هم زمان از محبوبیت زیادی برخوردار است. همچنین می تواند به عنوان متعادل کننده بار، یک پروکسی معکوس و یک سرور ذخیره سازی HTTP استفاده شود که قطعاً ارزش امتحان کردن را دارد! پس با ما همراه شوید تا نحوه بهینه سازی سرعت وب سایت با استفاده از Nginx را بررسی کنیم…
فهرست مطالب
آموزش مراحل بهینه سازی سرعت وب سایت با Nginx
بهینه سازی سرعت وب سایت با Nginx می تواند با استفاده از یک کش داخلی، به در خواست های داینامیک اجازه دهد تا مستقیماً روی سرور ذخیره شوند. در نتیجه بار روی CPU و سیستم به طور کلی کاهش پیدا می کند! مراحل زیر در پیاده سازی این روند به شما کمک بزرگی خواهند کرد:
1- فعال کردن فشرده سازی Gzip روی Nginx
در بهینه سازی سرعت وب سایت، فشرده سازی Gzip را به عنوان یک پیشنهاد خوب در نظر بگیرید. فشرده سازی Gzip برای کاهش اندازه فایل های درخواستی توسط مرورگر وب کلاینت استفاده شده و باعث کاهش زمان مورد نیاز برای انتقال یک منبع از سرور به مرورگر نیز می شود. علاوه بر این این وب سرور می تواند از پهنا باند شبکه کمتری استفاده کرده و زمان بارگذاری صفحات را برای اتصلات افزایش دهد.
این عمل اندازه فایل شما را تا 70% افزایش می دهد و باید توجه داشته باشید که هنگام پیکربندی Nginx، این وب سرور را طوری پیکربندی کنید که فقط فایل های بزرگ را فشرده کند و از فشرده سازی فایل های کوچک جلوگیری کند. با ویرایش فایل پیکربندی میزبان مجازی Nginx میتوانید فشردهسازی Gzip را فعال کنید:
nano /etc/nginx/sites-enabled/your-domain.conf
سطرهای زیر را در بخش http اضافه کنید:
gzip on; gzip_disable "msie6"; gzip_vary on; gzip_proxied any; gzip_min_length 1024; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
حال فایل را ذخیره کنید و سپس سرویس Nginx را مجدداً راه اندازی کنید:
systemctl restart nginx
در مرحله بعد می توانید فشرده سازی Gzip را با دستور زیر تأیید کنید:
curl -I -H 'Accept-Encoding: gzip' http://your-domain.com/
در بهینه سازی سرعت وب سایت با استفاده از Nginx، اگر فشرده سازی Gzip فعال باشد باید «Content-Encoding: gzip» را در خروجی زیر ببینید:
HTTP/1.1 200 OK Server: nginx/1.4.6 (Ubuntu) Date: Tue, 01 Sep 2020 07:54:04 GMT Content-Type: text/html Last-Modified: Tue, 04 Mar 2014 11:46:45 GMT Connection: keep-alive Content-Encoding: gzip
2- فعال کردن پشتیبانی HTTP/2
از آن جایی که Nginx برای استفاده از پروتکل HTTP/1 پیکربندی شده است، در مقایسه با HTTP/1، پروتکل HTTP/2 مزایای زیادی دارد. HTTP/2 به مرورگر وب این اجازه را می دهد تا فایل را به صورت Parallel دانلود کند. توجه داشته باشید که قبل از فعال کردن HTTP/2 در Nginx، لازم است که HTTPS را روی سرور خود فعال کنید، چون اکثر مرورگر ها HTTP/2 را فقط با HTTPS مجاز می کنند. شما می توانید HTTP/2 با ویرایش فایل پیکربندی میزبان مجازی Nginx، فعال کنید. شما می توانید این فعال سازی را با دستورات زیر انجام دهید:
nano /etc/nginx/sites-enabled/your-domain.conf
حال خط زیر را پیدا کنید:
listen 443 ssl;
در این مرحله خط قبلی را با خط زیر جایگزین کنید:
listen 443 ssl http2;
پس از انجام مراحل قبلی، فایل را بعد از ذخیره کردن ببندید. حال سرویس Nginx را مجدد راه اندازی کنید تا تغییرات اعمال شود:
systemctl restart nginx
پروتکل HTTP/2 را با استفاده از دستور زیر تایید کنید:
curl -I https://your-domain.com
پس از اجرا باید خروجی زیر نمایش داده شود:
HTTP/2 200 server: nginx date: Tue, 01 Sep 2020 08:19:13 GMT content-type: text/html; charset=UTF-8 vary: Accept-Encoding x-powered-by: your-domain.com
3- پیکربندی Worker Processes برای بهینه سازی سرعت وب سایت
worker Processes حداکثر تعداد اتصالاتی است که در هر فرآیند اتصال می تواند به طور همزمان انجام دهد را تعریف می کند، و به طور پیش فرض این عدد روی 768 تنظیم شده است. توصیه می شود که این مقدار را معادل با توصیف گر فایل باز تنظیم کنید. شما می توانید با استفاده از دستور زیر می توانید تعداد توصیف گر های فایل باز را پیدا کنید:
ulimit -n
خروجی به صورت زیر است:
1024
این مقدار را می توانید با ویرایش فایل اصلی پیکربندی Nginx، در پیکربندی سیستم خود تنظیم کنید:
nano /etc/nginx/nginx.conf
خطوط زیر را تغییر دهید:
events { worker_connections 1024; }
فایل را ذخیره کنید و سپس Nginx را مجدد راه اندازی کنید تا تغییرات اعمال شود.
4- پیکربندی اندازه بافر ها برای بهینه سازی سرعت وب سایت
بافر ها نقش مهمی در افزایش عملکرد وب سرور Nginx دارند. با بافر ها می توانیم سریع ترین پاسخ را از سرور پروکسی دریافت کنیم و آن را در بافر های تنظیم شده توسط دستورالعمل های Proxy_buffer_size و Proxy_buffers ذخیره کنیم. توجه کنید که اندازه بافر به طور پیش فرض برابر با یک صفحه حافظه است. شما می توانید بافر را با ویرایش فایل پیکربندی میزبان مجازی Nginx تنظیم کنید:
nano /etc/nginx/sites-enabled/your-domain.conf
خطوط زیر را در بلوک سرور “http {” اضافه کنید:
client_body_buffer_size 10K; client_header_buffer_size 1k; client_max_body_size 8m; large_client_header_buffers 4 4k;
فایل را ذخیره کنید و ببندید و سپس Nginx را مجدد راه اندازی کنید.
5- پیکربندی Timeout جهت بهینه سازی سرعت وب سایت
دستورات Timeout برای زمانی استفاده می شود که یک سرور منتظر بماند تا بادی کلاینت یا هدر کلاینت پس از درخواست ارسال شود. در صورت تاخیر، Nginx یک خطای HTTP 408 Request timeout را نشان می دهد. این کار سرور شما را به مدت طولانی از مدیریت اتصالات آزاد می کند. شما می توانید با ویرایش فایل پیکربندی میزبان مجازی Nginx آن را تنظیم کنید:
nano /etc/nginx/sites-enabled/your-domain.conf
خطوط زیر را در بلوک سرور “http {” اضافه کنید:
client_body_timeout 12; client_header_timeout 12; keepalive_timeout 15; send_timeout 10;
فایل را پس از ذخیره کرده و ببندید، حال Nginx را مجدد راه اندازی کنید تا تغییرات بهینه سازی سرعت وب سایت اعمال شود. اکنون می توانید از ترفند ایجاد شده برای بهینه سازی سرعت وب سایت خود لذت ببرید!
پیشنهاد کارشناس! همان طور که مشاهده کردید استفاده از تکنیک های گوناگون برای بهینه سازی سرعت وب سایت در تمام مراحل جلب رضایت کاربران از اهمیت حیاتی برخوردار است. شما نیز می توانید برای تجربه میزبانی معتبر از سرور اختصاصی متناسب با ویژگی های مورد نیاز خود برای ایجاد یک تجربه کاربری عالی استفاده نمایید. برای شروع مشاوره رایگان از گزینه ارسال تیکت استفاده نمایید.
سخن آخر
بهینه سازی سرعت وب سایت ممکن است دغدغه بسیاری از شما عزیزان باشد که با مطاله روش های موثر ذکر شده در این مقاله آذرسیس و استفاده از وب سرور بی نظیر Ngnix بسیاری از مشکلات بهینه سازی سرعت وب سایت شما به طور کلی از میان برداشته خواهد شد. از همراهی همیشگی شما در سری وبلاگ های آموزش پیشرفته آذرسیس بسیار ممنونیم. انتقادات، پیشنهادات و نظرات ارزشمند خود را در راستا بهبود خدمات رسانی تیم تلاشگر آذرسیس با ما در میان بگذارید…