بهینه سازی مجنتو

بهینه سازی مجنتو

مجنتو یه eCommerce خیلی محبوب و پر طرفدار هست.

ما چندین پیشنهاد برای بهینه کردن این CMS محبوب به شما پیشنهاد میدهیم.

نکته : مجنتو نسبت به eCommerce های دیگر به شدت منابع بیشتری صرف میکنه.

و اگر شما با shared Hosting ها به مشکل مصرف منابع برخرودید حتما باید به فکر dedicated server باشید.

همچنین در نظر داشته باشید که VPS راه حل خوبی برای وبسایت های مجنتو پربازدید نیست.

چون اغلب VPS ها منابع کمتری نسبت به آنچه خریداری کردید در اختیار شما میگذارند.

Changes to .htaccess

Enable Output Compression

اگر شما فایل htaccess. برای وبسایت مجنتو خودتون داشته باشید، شما باید پیدا کنید قسمتی از متن رو که با

<IfModule mod_deflate.c> شروع میشه و در انتهاش </IfModule> هست .

این قسمت میتونه ماژول Apache’s mod_deflate رو روشن کنه که ایم ماژول ، فشرده سازی برای تکست ، java ، css رو فراهم میکنه.

که شما میتونید این قسمت رو uncomment کنید.

مثل خط کد زیر

 

<IfModule mod_deflate.c>

############################################
## enable apache served files compression
## http://developer.yahoo.com/performance/rules.html#gzip

     # Insert filter on all content
     SetOutputFilter DEFLATE
     # Insert filter on selected content types only
     AddOutputFilterByType DEFLATE text/html text/plain text/xml
text/css text/javascript

     # Netscape 4.x has some problems...
     BrowserMatch ^Mozilla/4 gzip-only-text/html

     # Netscape 4.06-4.08 have some more problems
     BrowserMatch ^Mozilla/4\.0[678] no-gzip

     # MSIE masquerades as Netscape, but it is fine
     BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

     # Don't compress images
     SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary

     # Make sure proxies don't deliver the wrong content
     Header append Vary User-Agent env=!dont-vary

</IfModule>

Enable Expires Headers

بازدیدکننده هایی که بار اول وبسیات شما رو باز میکنند ، چندین و چند درخواست HTTP ارسال میکنند

با استفاده از “Expires” هدر ، شما کمپوننت های سایت رو کش میکنید.

از این طریق باعص کاهش درخواست های HTTP غیر ضروری روی سرور خودتون میشید.

برای این کار شما باید پیدا کنید فایل htaccess. رو جایی که با این عبارت <IfModule mod_expires.c> شروع میشه

و با عبارت </IfModule> پایان میپذیره

<IfModule mod_expires.c>

############################################
## Add default Expires header
## http://developer.yahoo.com/performance/rules.html#expires

     ExpiresActive On
     ExpiresDefault "access plus 1 year"

</IfModule>

Magento Administration Tweaks

Merge CSS and JS

این ترفند خاص ، تعداد درخواست های HTTP رو روی وبسایت شما کاهش میده.

اگر ورژن مجنتوی شما x1.4.x هست یا ورژن های قبلی آن ، میتونید از extension رایگان Fooman_Speedster استفاده کنید.

اگر شما از ورژن های بعدی استفاده میکنید ، قدم های زیر را انجام دهید.

  1. وارد منوی ادمین شوید و به مسیر روبرو بروید System > Configuration > Developer
  2. در قسمت “JavaScript Settings” تغییر بدید “Merge JavaScript Files” رو به Yes
  3. در قسمت “CSS Settings” تغییر بدید “Merge CSS Files” رو به Yes
  4. در نهایت باید کش مجنتو رو پاک کنید.

Enabling Flat Catalog

با فعال کردن ویژگی Flat Catalog برای Categories و Products ، شما دیتاهای Products رو توی یه جدول ذخیره میکنید

و از این طرق باعث کاهش پرس و جوهای دیتابیسی میشید که نتیجش کارایی بهتر هست.

  1. برای این کار قدم های زیر را اجرا کنید.
  2. وارد پنل ادمین شوید و به مسیر روبرو بروید System > Configuration > Catalog
  3. از قسمت “Frontend” تغییر بدید “Use Flat Catalog Category” رو به Yes
  4. از قسمت “Frontend” تغییر بدید “Use Flat Catalog Product” رو به Yes که این قسمت اختیاری هست
  5. در نهایت شما باید کش مجنتو رو پاکسازی کنید.

Database Maintenance Tips

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

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

در زیر ما چندین ترفند برای کاهش سایز دیتابیس به شما پیشنهاد میدهیم.

Database Logs

چندین جدول وجود داره که مجنتو استفاده میکنه برای  logging .

از آنجایی که لاگ فایل ها خیلی مهم هستند و تقریبا هر رکوئستی ذخیره میشه ، بنابریان لاگ فایل ها به سرعت بزرگ میشن.

پس تعمیر و نگهداری این فایل ها میتونه کمک بزرگی به بهبود سرعت سایت ما کنه.

در زیر جدول های مریوط به  logging رو مشاهده میکنید.

 

log_customer
log_visitor
log_visitor_info
log_url
log_url_info
log_quote
report_viewed_product_index
report_compared_product_index
report_event
catalog_compare_item

Database Log Cleaning using Magento Administration

  1. در ادمین مجنتو به System > Configuration بروید
  2. از منوی سمت چپ و از قسمت Advanced بر روی system کلیک کنید.
  3. از قسمت “Log Cleaning” تغییر بدید “Enable Log Cleaning” رو به Yes و کانفیگ لاگ فایل رو برای 14 روز
  4. بر روی Save Config کلیک کنید.

log.php Utility

مجنتو یه ابزار shell ارائه میده که از طریق corn میتونه کانفیگ بشه یا بصورت دستی اجرا بشه که لاگ فایل ها رو پاک کنه

Manually

با SSH به اکانتتون لاگین کنید و به دایرکتوری Magento root بروید و سپس تایپ کنید :

php -f shell/log.php clean

همچنین شما میتونید از سوئیچ -days استفاده کنید و تعیین کنید چند روز را میخواهید save نگه دارید.

Cron

  1. به سی پنل لاگین کنید
  2. روی corn job کلیک کنید

این فقط یک مثال هست :

php -f
/home/yourcpanelusername/public_html/path/to/magento/shell/log.php

Database Cleaning via phpMyAdmin

از phpMyAdmin استفاده کنید که خیلی به شما کمک میکنه و انعطاف پذیری بالایی داره

  1. به سی پنل لاگین کنید و بر روی phpMyAdmin کلیک کنید
  2. بر روی دیتابیسی که مجنتو رو نصب کردید کلیک کنید.
  3. جدول های زیر رو انتخاب کنید
log_customer
log_quote
log_summary
log_summary_type
log_url
log_url_info
log_visitor
log_visitor_info
log_visitor_online

در نهایت بر روی دراپ دان منو کلیک کنید و Empty رو انخاب کنید ، در این لحظه confirmation برای شما ارسال میشه که Yes را بزنید.

هیچ نظری وجود ندارد