افزایش سرعت nginx توسط Ngx_Pagespeed در centos

افزایش سرعت nginx توسط Ngx_Pagespeed

Nginx یک وب سرور قدرتمند و اپن سورس با قدرت هندل درخواست‌های بسیار زیادی در لحظه می‌باشد، و قدرت این را دارد که به عنوان یک reverse proxy مورد استفاده قرار گیرد. این وب سرور قدرتمند با زبان c برنامه‌نویسی شده و در صورتی که به درستی کانفیگ شود می‌تواند بسیار قدرتمندتر از رقبای پرمیوم خود باشد.

 

 

انجینکس به دلیل پاسخگویی به درخواست‌های سایت‌های زیاد میزبانی شده و عملکرد و پایداری بی مانند آن معروف و محبوب شده است. یکی از موارد مهمی که در بهبود شرایط استفاده کاربر از سایت و یا user experience مهم است سرعت لود وب‌سایت و صفحات داخلی آن است که یک مدیر سرور باید همیشه به آن توجه کافی داشته باشد.

 

اگر سرور شما از انجینکس برای میزبانی استفاده می‌کند افزایش سرعت nginx از طریق Ngx_Pagespeed یکی از بهترین راهکارها برای خلق تجربه لذت‌بخش برای کاربران سایت شما می‌باشد.

 

Ngx_Pagespeed یک ماژول open source برای nginx می‌باشد که با ست شدن با این وب سرور سرعت بارگذاری صفحات شما را به شدت افزایش می‌دهد.

 

در این مقاله شما را با نحوه افزایش سرعت nginx توسط Ngx_Pagespeed در centos آشنا خواهیم کرد پس با ما همراه باشید.

 

برای نصب ماژول Ngx_Pagespeed نیاز داریم تا ابتدا انجینکس را از طریق سورس کامپایل و نصب کنیم بدین منظور ابتدا توسط دستور زیر پکیج‌های موردنیاز این برنامه را نصب می‌کنیم.

 

yum install wget gcc cmake unzip gcc-c++ pcre-devel zlib-devel
yum group install "Development Tools"

 

نصب پکیج های موردنیاز nginx

 

حال توسط دستور wget آخرین ورژن انجینکس را بر روی سرور لینوکس خودمان دانلود می‌کنیم.

 

mkdir ~/downloads
cd ~/downloads
wget -c https://nginx.org/download/nginx-1.13.2.tar.gz
tar -xzvf nginx-1.13.2.tar.gz

 

 

حال آخرین ورژن ماژول ngx_pagespeed را نیز دانلود کرده و از حالت فشرده خارج می‌کنیم.

 

wget -c https://github.com/pagespeed/ngx_pagespeed/archive/v1.12.34.2-stable.zip
unzip v1.12.34.2-stable.zip

 

دانلود ماژول ngx_pagespeed

 

حال وارد دایرکتوری ماژول ngx_pagespeed می‌شویم و لایبری موردنیاز برای کامپایل این ماژول را دانلود می‌کنیم و سپس آن را از حالت فشرده خارج می‌کنیم.

 

cd ngx_pagespeed-1.12.34.2-stable/
wget -c https://dl.google.com/dl/page-speed/psol/1.12.34.2-x64.tar.gz
tar -xvzf 1.12.34.2-x64.tar.gz

 

حتما بخوانید :  تغییر نام وب سرور apache به هر اسم دلخواه

حالا وارد دایرکتوری nginx می‌شویم و آن را با ماژول مربوطه کامپایل می‌کنیم.

 

cd ~/downloads/nginx-1.13.2
./configure --add-module=$HOME/downloads/ngx_pagespeed-1.12.34.2-stable/ --user=nobody --group=nobody --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid ${PS_NGX_EXTRA_FLAGS}

 

کانفیگ nginx با ngx_pagespeed

 

حال توسط دستورات زیر عملیات کامپایل و نصب را تکمیل می‌کنیم.

 

make
make install

 

 

بعد از نصب nginx توسط دستورات زیر سیمبلینک لینک‌های موردنظر را ایجاد کنید.

 

ln -s /usr/local/nginx/conf/ /etc/nginx/
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx

 

برای ایجاد فایل استارت انجینکس توسط دستور زیر یک فایل ایجاد می‌کنیم و محتویات زیر را داخل آن قرار می‌دهیم.

 

vi /lib/systemd/system/nginx.service

 

[Unit]Description=The NGINX HTTP and reverse proxy serverAfter=syslog.target network.target remote-fs.target nss-lookup.target[Service]Type=forkingPIDFile=/var/run/nginx.pidExecStartPre=/usr/sbin/nginx -tExecStart=/usr/sbin/nginxExecReload=/bin/kill -s HUP $MAINPIDExecStop=/bin/kill -s QUIT $MAINPIDPrivateTmp=true[Install]WantedBy=multi-user.target

 

 

حال توسط دستورات زیر می‌توانید سرویس nginx را کنترل کنید.

 

 

systemctl start nginx
systemctl enable nginx
systemctl status nginx

 

نحوه استارت کردن nginx

 

سپس باید برای کانفیگ nginx و ماژول Ngx_Pagespeed باید دایرکتوری‌هایی که این ماژول برای cache کردن وب سایت‌ها استفاده می‌کند را ایجاد کنیم.

 

mkdir -p /var/ngx_pagespeed_cache
chown -R nobody:nobody /var/ngx_pagespeed_cache

 

حال باید ماژول را از طریق فایل کانفیگ nginx فعال کنیم. ابتدا فایل کانفیگ را باز می‌کنیم

 

vi /etc/nginx/nginx.conf

 

حال خطوط زیر را به آن اضافه می‌کنیم.

 

# Pagespeed main settings
pagespeed on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
# Ensure requests for pagespeed optimized resources go to the pagespeed
# handler and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; }
location ~ "^/ngx_pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon" { }

 

 

حال توسط دستور زیر چک می‌کنیم تا فایل کانفیگ ما مشکلی نداشته باشه و اروری نده

 

nginx -t

 

در آخر هم سرویس nginx را یک‌بار ریست می‌کنیم تا تغییرات اعمال بشه

 

systemctl restart nginx

 

خوب به انتهای آموزش افزایش سرعت nginx توسط Ngx_Pagespeed در centos رسیدیم امیدوارم توسط این آموزش بتوانید سرور خود را بهینه کنید و لود سرعت وب سایتهای میزبانی شده خود را نیز به طور چشمگیری افزایش بدید.

افزایش سرعت nginx توسط Ngx_Pagespeed در centos
امتیاز شما به این مطلب

حسین محمدپور

با علاقه زیادی که به مباحث تخصصی امنیت سرور داشتم از 8 سال پیش کار خود را در این زمینه شروع کردم و طی این مدت مدیر 2 تیم امنیتی بزرگ ایرانی بودم و حالا با 4 سال سابقه در زمینه مباحث مدیریت سرور و میزبانی وب، سایت مدیر سرور را راه اندازی کردم تا بتوانم به علاقه مندان و مشتاقان این حوزه تخصصی کمک کنم.

‫۲ نظرها

  1. سلام.
    ببخشید این آموزش بروی سرور های مجازی هم که رم محدود بین ۲ – ۴ گیگ و سی پی یو ۲ یا ۴ هسته ای دارند هم کاربرد دارد؟
    متشکرم بابت انتشار این مطلب

    1. سلام

      بله قطعا، تمامی روشهایی که برای افزایش سرعت ارائه میشه معمولا برای سرورهایی هستش که سخت افزار محدودتری دارند

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بستن