زمان کنونی: ۴-۲-۱۴۰۳, ۰۸:۳۵ عصر درود مهمان گرامی! (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 4
  • 1
  • 2
  • 3
  • 4
  • 5
سرعت لود سایت
۴-۱-۱۳۹۲, ۰۳:۴۶ صبح
ارسال: #1
سرعت لود سایت
برای بالا بردن سرعت لود سایت من چه پیشنهادی دارید ؟ از اساتید محترم و به ویژه آقای گنجی میخوام راهنمایی کنند؟ دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
امضاء parsfutsal
از هـــر مسئله ای که تنهـــا راه حلــش،

" گــــذر زمـــــان " است

بیــــزارم…!24
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
۴-۱-۱۳۹۲, ۰۵:۴۷ صبح
ارسال: #2
سرعت لود سایت
درود
من ایم مقاله رو دیدم جالبه
میتونید ازش بهره ببرید
----------------------------
علمی ترین روش افزایش سرعت لود سایت
مقالات آموزشی - آموزش طراحی سایت
نوشته شده توسط مرتضی دفاعی  
سه شنبه, 25 بهمن 1390 ساعت 14:43

در ابتدا در مورد نوع کارکرد سایت و اتفاقاتی که در هنگام لود یک سایت می افتد توضیحاتی می دهم سپس به اصل آموزش می پردازم.
وقتی یک سایت بارگذاری می شود اگرمحتوی آن فقط متن باشد مشکلی نیست اما اگر فایل های css و js و انواع عکس و فلش و ... نیز داخل سایت باشد مرورگر برای هر کدام از آنها یک درخواست (request) ارسال می کند. یعنی اگر در قالب 1 فایل html، 3 فایل css ، 2 فایل js و 12 عکس داشته باشد مرورگر شما برای باز کردن صفحه 18 درخواست به سرور ارسال می کند.
ممکن است شما فکر کنید که مرورگر در بار اول این فایل ها را در کش یا حافظه نهانگانی خود ذخیره می کند در حالیکه اگر به یکی دیگر از صفحات همین سایت بروید مرورگر برای اینکه ببیند فایل های Css و js و... تغییری کرده اند یا خیر، مجددا به تعداد فایل های مذکور درخواست به سرور ارسال می کند.
بسیار خوب حالا ما می خواهیم روشی را به شما آموزش دهیم که تعداد این درخواست ها را کم کنید تا با اینکار سایت شما در زمان کمتری بارگذاری و همچنین RAM و CPU سرور شما نیز کمتر مصرف شود.
این روش هیچ مشکلی با Ajax ندارد و برای تمامی هاست ها یکسان است فقط ممکن است مسیرها کمی متفاوت باشد وگرنه کلیات یکی است.




اما قبل از شروع آموزش برای تضمین این روش ابتدا به سایت زیر مراجعه کنید و تعداد request ها و زمان لود سایت خود را مشاهده کنید و نمره هایی که بر حسب درصد به سایت شما می دهد یادداشت کنید بعد از اعمال این کد ها نیز مجددا اینکار را انجام دهید و خودتان اختلاف را ببینید.




http://www.gtmetrix.com




در اینجا دو روش را آموزش می دهیم، ابتدا کسانی که به سرور خود دسترسی کامل دارند و می توانند تنظیمات سرور را دستکاری کنند.
اول از نصب بودن دو ماژول  mod_headers.so و mod_expires.so بر روی آپاچی سرور خود مطمئن شوید.
فایل httpd.conf را در سرور خود جستجو کنید چون در هر سرور مسیر خاصی دارد مثلا در برخی به شکل زیر است


/etc/httpd/httpd.conf


حالا توسط یک ادیتور آن را باز و کدهای زیر را جستجو کنید :


LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so


دقت کنید که این کدها داخل /* و */ قرار نگرفته باشند (به اصطلاح کامنت نشده باشند)
اکنون کافیست کدهای زیر را به فایل config خود بیافزایید :


ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 1 seconds"
ExpiresByType text/xml "access plus 1 seconds"
ExpiresByType text/css "access plus 30 days"
ExpiresByType text/javascript "access plus 30 days"
ExpiresByType image/gif "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"


توضیح مختصری در مورد کدهای بالا :
در خط اول که دستور روشن شدن حالت expire داده می شود.
در خط دوم به مرورگر گفته می شود که تمام فایل ها ظرف یک ثانیه expire شوند.
در خط پنجم الی آخر، به ترتیب زمان expire شدن فایل های css، java، gif، jpeg و png یک ماه تعیین می شود یعنی اگر حتی تنظیمات مرورگر خود را طوری عوض کنید که در هر بازدید، تغییرات فایل ها را چک کند باز هم تا یک ماه تا زمانی که فایل های ذکر شده در کش مرورگر کاربر باشد درخواستی برای بررسی نسخه جدیدتر آنها ارسال نخواهد شد و این یعنی افزایش سرعت لود سایت شما با به حداقل رساندن تعداد درخواست ها !!!
قبل از ریست کردن سرور خود توسط کد زیر تنظیماتی که انجام داده اید را تست کنید :


service httpd configtest


در صورتی که همه چیز OK بود سرور خود را reset کنید.
اگر شما جزء آن دسته از دوستان هستید که از سرویس های هاستینگ یک هاست اشتراکی (share host) خریداری کرده اید و به فایل کانفیگ سرور دسترسی ندارید می توانید با استفاده از روش زیر و استفاده از فایل .htaccess اینکار را انجام دهید.
ابتدا وارد کنترل پنل هاست خود شوید و فایل .htaccess را برای ویرایش باز و کدهای زیر را در انتهای آن کپی کنید :


### EXPIRES
# month A2592000, week A604800, day A86400, hour A3600,15 min A900
ExpiresActive On
ExpiresDefault A86400
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A900

این هم یک کد دیگر که بسیار موثر است :

### BEGIN .htaccess
# Protect the htaccess file
<Files .htaccess>
Order Allow,Deny
Deny from all
</Files>
# Protect wpconfig.php
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>
# Disable directory browsing
Options All -Indexes
# BEGIN COMPRESSION AND CACHING
<IfModule mod_deflate.c>
# Enable compression
AddOutputFilterByType DEFLATE text/css text/javascript application/x-javascript text/html text/plain text/xml image/x-icon
<IfModule mod_setenvif.c>
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
BrowserMatch bMSI[E] !no-gzip !gzip-only-text/html
</IfModule>
<IfModule mod_headers.c>
# Make sure proxies deliver correct content
Header append Vary User-Agent env=!dont-vary
# Ensure proxies deliver compressed content correctly
Header append Vary Accept-Encoding
</IfModule>
</IfModule>
<IfModule mod_headers.c>
# No ETags, No Pragma
Header unset Pragma
Header unset ETag
# Default cache time to 1 year (31536000 sec)
Header set Cache-Control "max-age=31536000, public, must-revalidate"
</IfModule>
# No ETags
FileETag none
# CACHE SETTINGS (mod_expires)
<IfModule mod_expires.c>
# Turn on Expires
ExpiresActive On
# set default to "access plus 1 year"
ExpiresDefault A31536000
# html - "modification plus 1 hour"
ExpiresByType text/html M3600
# css and JavaScript - "modification plus 6 weeks"
ExpiresByType text/css M3628800
ExpiresByType text/javascript M3628800
ExpiresByType application/x-javascript M3628800
</IfModule>
# No cache for php-files
<FilesMatch ".(php)$">
<IfModule mod_expires.c>
ExpiresActive Off
</IfModule>
<IfModule mod_headers.c>
Header set Cache-Control "private, no-cache, no-store, ------revalidate, no-transform"
</IfModule>
</FilesMatch>
# END CACHING
# W3 Total Cache are here (automatically included by the plugin):
# WordPress Default Rules are here (at the end of the file):
### END .htaccess

در صورتیکه بخواهید این تغییرات را فقط برای یک دایرکتوری خاص اعمال کنید کافیست کدهای expire دلخواهتان را داخل تگ دایرکتوری با آدرس شاخه مورد نظرتان بگذارید :


<Directory "/apache/http/rpw.ir/img">
کدهای اکسپرای را اینجا کپی کنید
</Directory>
<Directory "/apache/http/rpw.ir/flash">
کدهای مورد نظر اینجا کپی شود
</Directory>


این روش بر روی LocalHost هم جواب می دهد و شما بعد از این تغییرات کافیست تا فایل Log آپاچی خود را با حالت قبلی مقایسه نمایید تا تغییر در تعداد درخواست ها را مشاهده کنید.
باتشکر از دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.


اینم ببینید
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
امضاء Zhyar
در فروشگاه اینترنتی من این خدمات داده می شود: ارسال رایگان به سراسر کشور + قیمت هایی کاملا منصفانه و رقابتی + گارانتی 18 ماهه + 5 سال خدمات پس از فروش

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
Ok
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان