در این آموزش ما قصد داریم نحوه نصب محصول جدید Google با نام mod_pagespeed را در وب سرورهای لینوکسی Apache و Nginx را به شما آموزش دهیم، که باعث افزایش سرعت لود وب سایتهای آپاچی و انجین ایکس سریعتر از همیشه میشود.
من یکسری تست ها شخصا با این ماژول روی سرور linux-zone.org انجام دادم و خروجی که گرفتم بسیار شگفت آور بود. من به همه شما توصیه میکنم که حتما آن را نصب و نتیجه آنرا مشاهده کنید.
همچنین توصیه میشود مطالعه کنید.
5 نکته برای بالا بردن عملکرد و بهینه سازی وب سرور آپاچی شما
در این مقاله ما به شما نحوه نصب و راه اندازی ماژول mod_pagespeed گوگل برای وب سرورهای Apache و Nginx در سیستم های RedHat/CentOS/Fedora و Debian/ Ubuntu با استفاده از پکیج های باینری رسمی، آموزش خواهیم داد، به طوریکه سیستم تان به صورت اتوماتیک و مرتب آپدیت ها را دریافت، وخود را به روز کند.
Mod_Pagespeed چیست
mod_pagespeed یک ماژول اوپن سورس برای وب سرور آپاچی و انجین ایکس میباشد که به صورت اتوماتیک صفحات وب را برای بالا بردن عملکرد بهتر (با ذخیره ی صفحات وب توسط HTTP Server) بهینه سازی میکند.
همچنین mod_pagespeed دارای فیلترهای مختلفی است که به صورت اتوماتیک فایل هایی مثل HTML, CSS, JavaScrip, JPEG, PNG و دیگر منابع را بهینه سازی میکند.
mod_pagespeed بر رویlibrary های بهینه سازی PageSpeed توسعه داده شده، که روی بیش از 100 هزار وب سایت مورد استفاده قرار گرفته است، و توسط معروفترین CDN (مخفف Content Delivery Network) و هاستینگ ها همانند GoDaddy, EdgeCast, DreamHost و ... ارائه شده است.
همچنین بیشتر از 40 فیلتر بهینه سازی ارائه میدهد، که شامل :
در حال حاضر ماژول mod_pagespeed از پلتفرم های لینوکسی مانند RedHat/CentOS/Fedora و Debian/ Ubuntu برای توزیع های 32 و 64 بیتی پشتیبانی میکند.
نصب ماژول Mod_Pagespeed در لینوکس
همانطور که در بالا توضیح دادیم، برای نصب و آپدیت های آینده ما از پکیج های باینری رسمی گوگل استفاده میکنیم، بنابراین اجازه دهید پیش رویم و براساس معماری سیستم عامل شما آنرا نصب کنیم.
نکته : لینک های دانلود ماژول pagespeed در زیر به دلیل تحریم ها فیلتر میباشد و برای دانلود نیاز به استفاده از فیلتر شکن (VPN) میباشد.
در RHEL/CentOS و Fedora
در Debian و Ubuntu
نصب mod_pagespeed از پکیج های باینری، ریپازیتوری رسمی گوگل را به سیستم شما اضافه میکند، بنابراین شما میتوانید mod_pagespeed را به صورت اتوماتیک و با استفاده از yum یا apt آپدیت کنید.
چه ورژنی از Mod_Pagespeed نصب است؟
اجازه بدید ببینیم کدام بسته mod_pagespeed روی سیستم نصب میباشد :
درباره دایرکتوریها و تنظیمات Mod_Pagespeed
این ماژول فایلها و دایرکتوری های کانفیگ که در زیر آمده را هنگام نصب به صورت اتوماتیک ایجاد میکند.
/etc/cron.daily/mod-pagespeed : اسکریپت کرون mod_pagespeed برای چک کردن و نصب آخرین update ها
/etc/httpd/conf.d/pagespeed.conf : فایل تنظیمات اصلی برای آپاچی در توزیع های برپایه RPM
/etc/apache2/mods-enabled/pagespeed.conf : فایل تنظیمات اصلی برای Apache2 در توزیع های برپایه DEB
/etc/httpd/conf.d/pagespeed_libraries.conf : مجموعه ای از library های پیش فرض برای آپاچی
/usr/lib{lib64}/httpd/modules/mod_pagespeed.so : ماژول mod_pagespeed برای آپاچی
/var/cache/mod_pagespeed : دایرکتوری ذخیره سازی (cache) فایل برای وب سایت ها
نکته : در Nginx فایل های تنظیمات mod_pagespeed معمولا تحت دایرکتوری /usr/local/nginx/conf/ ایجاد میشود.
تنظیمات ماژول Mod_Pagespeed
در آپاچی، mod_pagespeed هنگام نصب به صورت اتوماتیک فعال خواهد شد، در حالیکه در Nginx احتیاج هست که خط های زیر را در فایل nginx.conf تان و در هر server block جایکه PageSpeed فعال هست، قرار دهید.
در نهایت، فراموش نکنید سرویس Apache یا Nginx تان را برای اینکه mod_pagespeed به درستی کار کند restart کنید.
مرحله 4 : تایید کردن ماژول Mod_Pagespeed
برای تایید کردن ماژول mod_pagespeed، ما میخواهیم از دستور curl برای تست بر روی Domain یا IP همانند زیر استفاده کنیم.
در Apache
در Nginx
اگر شما هدر X-Mod-Pagespeed را مشاهده نمیکنید، به این معنی میباشد که mod_pagespeed نصب نشده است.
مرحله 5 : فعال یا غیرفعال کردن ماژول
اگر شما در کل نمیخواهید از ماژول mod_pagespeed استفاده کنید، فایل pagespeed.conf را با استفاده از یک ادیتور متن باز کنید سپس خط "ModPagespeed on" را پیدا کرده و برای غیرفعال کردن "off" را جایگزین "on" کنید. همانند زیر :
همانند بالا، برای فعال کردن ماژول، خط "ModPagespeed off" را پیدا کرده و برای غیرفعال کردن "on" را جایگزین "off" کنید. همانند زیر :
همانطور که در بالا گفته شد بعد از نصب mod_pagespeed روی وب سایت تان حدود 40 تا 50 درصد لود سایت تان بیشتر خواهد شد. برای ما جذاب است که شما سرعت وب سایت تان را بعد از نصب ماژول روی سیستم از طریق کامنت هایتان با ما به اشتراک بگذارید.
همچنین توصیه میشود مطالعه کنید.
آموزش نصب LAMP در لینوکس :
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس اوبونتو 16.10 و 16.04
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس دبیان 9
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس CentOS 7.0
آموزش نصب LEMP در لینوکس :
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس اوبونتو 16.10 و 16.04
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس دبیان 9
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس CentOS 7.0
برای کسب اطلاعات بیشتر درباره تنظیمات این ماژول، شما میتوانید صفحه رسمی mod_pagespeed را بررسی بفرمایید.
موفق باشید.
من یکسری تست ها شخصا با این ماژول روی سرور linux-zone.org انجام دادم و خروجی که گرفتم بسیار شگفت آور بود. من به همه شما توصیه میکنم که حتما آن را نصب و نتیجه آنرا مشاهده کنید.
همچنین توصیه میشود مطالعه کنید.
5 نکته برای بالا بردن عملکرد و بهینه سازی وب سرور آپاچی شما
در این مقاله ما به شما نحوه نصب و راه اندازی ماژول mod_pagespeed گوگل برای وب سرورهای Apache و Nginx در سیستم های RedHat/CentOS/Fedora و Debian/ Ubuntu با استفاده از پکیج های باینری رسمی، آموزش خواهیم داد، به طوریکه سیستم تان به صورت اتوماتیک و مرتب آپدیت ها را دریافت، وخود را به روز کند.
Mod_Pagespeed چیست
mod_pagespeed یک ماژول اوپن سورس برای وب سرور آپاچی و انجین ایکس میباشد که به صورت اتوماتیک صفحات وب را برای بالا بردن عملکرد بهتر (با ذخیره ی صفحات وب توسط HTTP Server) بهینه سازی میکند.
همچنین mod_pagespeed دارای فیلترهای مختلفی است که به صورت اتوماتیک فایل هایی مثل HTML, CSS, JavaScrip, JPEG, PNG و دیگر منابع را بهینه سازی میکند.
mod_pagespeed بر رویlibrary های بهینه سازی PageSpeed توسعه داده شده، که روی بیش از 100 هزار وب سایت مورد استفاده قرار گرفته است، و توسط معروفترین CDN (مخفف Content Delivery Network) و هاستینگ ها همانند GoDaddy, EdgeCast, DreamHost و ... ارائه شده است.
همچنین بیشتر از 40 فیلتر بهینه سازی ارائه میدهد، که شامل :
- بهینه سازی تصاویر، فشرده سازی و تغییر سایز
- پیوند CSS و JavaScript، کوچک سازی و inlining
- domain sharding ، فرمت Cache و rewriting
- بارگذاری مجدد از منابع تصاویر و جاوا اسکریپت
- و بسیاری موارد دیگر ...
در حال حاضر ماژول mod_pagespeed از پلتفرم های لینوکسی مانند RedHat/CentOS/Fedora و Debian/ Ubuntu برای توزیع های 32 و 64 بیتی پشتیبانی میکند.
نصب ماژول Mod_Pagespeed در لینوکس
همانطور که در بالا توضیح دادیم، برای نصب و آپدیت های آینده ما از پکیج های باینری رسمی گوگل استفاده میکنیم، بنابراین اجازه دهید پیش رویم و براساس معماری سیستم عامل شما آنرا نصب کنیم.
نکته : لینک های دانلود ماژول pagespeed در زیر به دلیل تحریم ها فیلتر میباشد و برای دانلود نیاز به استفاده از فیلتر شکن (VPN) میباشد.
در RHEL/CentOS و Fedora
کد PHP:
----------- On 32-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
# yum install at [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_i386.rpm
----------- On 64-bit Systems -----------------
# wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
# yum install at [# if you don't already have 'at' installed]
# rpm -Uvh mod-pagespeed-stable_current_x86_64.rpm
در Debian و Ubuntu
کد PHP:
----------- On 32-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
$ sudo dpkg -i mod-pagespeed-stable_current_i386.deb
$ sudo apt-get -f install
----------- On 64-bit Systems -----------------
$ wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
$ sudo dpkg -i mod-pagespeed-stable_current_amd64.deb
$ sudo apt-get -f install
چه ورژنی از Mod_Pagespeed نصب است؟
اجازه بدید ببینیم کدام بسته mod_pagespeed روی سیستم نصب میباشد :
- بر روی سیستم 2 ماژول mod_pagespeed برای Apache 2.2 و mod_pagespeed_ap24.so برای Apache 2.4 نصب میشود.
- بر روی سیستم 2 فایل اصلی تنظیمات، pagespeed.conf و pagespeed_libraries.conf (برای دبیان pagespeed.load) نصب خواهد شد. اگر شما هر یک از فایل های تنظیمات را تغییر دهید، شما دیگر update هایی که در آینده ارائه خواهد شد را به صورت اتوماتیک دریافت نخواهید کرد.
- pagespeed_js_minify در حقیقت یک کوچک کننده ی مستقل برای برنامه جاوا اسکریپت است و به منظور ریزکردن کدهای جاوا اسکریپت و ایجاد metadata برای استاندارد سازی library (یا library canonicalization) مورد استفاده قرار میگیرد.
درباره دایرکتوریها و تنظیمات Mod_Pagespeed
این ماژول فایلها و دایرکتوری های کانفیگ که در زیر آمده را هنگام نصب به صورت اتوماتیک ایجاد میکند.
/etc/cron.daily/mod-pagespeed : اسکریپت کرون mod_pagespeed برای چک کردن و نصب آخرین update ها
/etc/httpd/conf.d/pagespeed.conf : فایل تنظیمات اصلی برای آپاچی در توزیع های برپایه RPM
/etc/apache2/mods-enabled/pagespeed.conf : فایل تنظیمات اصلی برای Apache2 در توزیع های برپایه DEB
/etc/httpd/conf.d/pagespeed_libraries.conf : مجموعه ای از library های پیش فرض برای آپاچی
/usr/lib{lib64}/httpd/modules/mod_pagespeed.so : ماژول mod_pagespeed برای آپاچی
/var/cache/mod_pagespeed : دایرکتوری ذخیره سازی (cache) فایل برای وب سایت ها
نکته : در Nginx فایل های تنظیمات mod_pagespeed معمولا تحت دایرکتوری /usr/local/nginx/conf/ ایجاد میشود.
تنظیمات ماژول Mod_Pagespeed
در آپاچی، mod_pagespeed هنگام نصب به صورت اتوماتیک فعال خواهد شد، در حالیکه در Nginx احتیاج هست که خط های زیر را در فایل nginx.conf تان و در هر server block جایکه PageSpeed فعال هست، قرار دهید.
کد PHP:
pagespeed on;
# Needs to exist and be writable by nginx. Use tmpfs for best performance.
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 ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }
مرحله 4 : تایید کردن ماژول Mod_Pagespeed
برای تایید کردن ماژول mod_pagespeed، ما میخواهیم از دستور curl برای تست بر روی Domain یا IP همانند زیر استفاده کنیم.
کد PHP:
# curl -D- http://192.168.10.240/ | less
در Apache
کد PHP:
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: Apache/2.4.6 (CentOS) PHP/5.4.16
...
X-Mod-Pagespeed: 1.9.32.13-0
---
در Nginx
کد PHP:
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: nginx/1.4.0
...
X-Page-Speed: 1.5.27.1-2845
...
مرحله 5 : فعال یا غیرفعال کردن ماژول
اگر شما در کل نمیخواهید از ماژول mod_pagespeed استفاده کنید، فایل pagespeed.conf را با استفاده از یک ادیتور متن باز کنید سپس خط "ModPagespeed on" را پیدا کرده و برای غیرفعال کردن "off" را جایگزین "on" کنید. همانند زیر :
کد PHP:
ModPagespeed off
همانند بالا، برای فعال کردن ماژول، خط "ModPagespeed off" را پیدا کرده و برای غیرفعال کردن "on" را جایگزین "off" کنید. همانند زیر :
کد PHP:
ModPagespeed on
همچنین توصیه میشود مطالعه کنید.
آموزش نصب LAMP در لینوکس :
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس اوبونتو 16.10 و 16.04
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس دبیان 9
آموزش نصب وب سرور آپاچی به همراه MariaDB و PHP (یا LAMP) در لینوکس CentOS 7.0
آموزش نصب LEMP در لینوکس :
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس اوبونتو 16.10 و 16.04
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس دبیان 9
آموزش نصب وب سرو Nginx به همراه MariaDB و PHP-FPM (یا LEMP) در لینوکس CentOS 7.0
برای کسب اطلاعات بیشتر درباره تنظیمات این ماژول، شما میتوانید صفحه رسمی mod_pagespeed را بررسی بفرمایید.
کد PHP:
https://developers.google.com/speed/pagespeed/module/
کامنت