مرا اسکن کن!
base 64 چیست ؟
فرض کنید شما یک داده ی باینری دارید و می خواهید آن را در بستر شبکه انتقال دهید.
به طور کلی شما این کار را تنها از طریق Stream کردن بیت ها و بایت های خام انجام نخواهید داد.
چرا؟ زیرا ابزارهایی برای Stream کردن متن وجود دارد. شما هرگز اطلاع ندارید که برخی از پروتکل ها ممکن است داده های باینری شما را به عنوان کاراکترهای کنترلی تفسیر کنند ( درست به مانند یک مودم) و یا برخی دیگر از پروتکل ها همانند FTP ممکن است تصور کنند که شما یک کاراکتر خاص مانند ending را وارد کرده اید.
بنابراین برای مقابله با این مشکلات داده های باینری را به رشته ای از کاراکترها کد گذاری (encode) می کنند.
Base64 یکی از انواع این گونه کد گذاری می باشد. چرا Base64؟ زیرا با استفاده از آن شما می توانید همواره بر ۶۴ کاراکتری که در اغلب مجموعه کاراکترها (character set) ارائه می شود حساب کنید و بنابراین از نحوه ی صحیح نمایش داده های خود در سمت گیرنده اطمینان بیشتری کسب کنید.
تأثیر Base64 بر سئو چگونه است؟
تأثیر اصلی که تصاویر Base64 بر سئو میگذارد این است که تصاویر توسط گوگل شناخته نمیشوند. به این معنی که تصاویری که شما بر مبنای 64 استفاده کردید توسط جستجوی تصاویر گوگل نمایش داده نمیشوند و یا همچنین در موتورهای جستجوی دیگر نیز نمایش داده نمیشوند.
پس چرا از آن استفاده میکنیم؟
بسیاری از تصاویری که در صفحه شما وجود دارد مهم نیستند و اگر آنها شناخته نشوند تأثیری بر روی ترافیک شما ندارند. بهترین مثال میتواند آیکونهای اجتماعی باشد، تعداد آنها کم است مانند Twitter، Google+، Facebook و غیره.
تصاویر واقعاً کوچک هستند و نیاز به شناخته شدن ندارند. شما هرگز از ترافیک آیکون کوچک توییتر سود نمیبرید. در مورد تصاویری که فقط برای طراحی استفاده میشوند مانند «دکمه پایین»، «نقلقول» فکر کنید، چیزهایی شبیه به اینها برای سئو مهم نیستند؛ اما سرعت بارگذاری صفحاتتان را کم میکنند. درهروب سایت 8 تا 12 آیکون اجتماعی وجود دارد که هرکدام از آنها یک درخواست را به HTTP میفرستند درحالیکه اگر شما از Base64 استفاده کنید نیاز نیست که آنها دانلود شوند.
در بعضی سناریو ها برای دخیره عکس در فایل json فایل تصویر را بهbase 64 تبدیل (encode) می کنند.
بهتر است که تنها برای تصاویر کوچک از Base64 استفاده کنیم. اگر شما سعی میکنید که تصاویر بزرگ را بر مبنای 64 بیاورید آنگاه شما با یک مقدار بزرگی کد در HTML روبرو هستید که مزیت عملکرد Base64 را از دست میدهید.
چگونه از Base64 استفاده کنیم؟
یک عکس معمولی در HTML شما وجود دارد.
مکان فایل (بهطور مثال Example.com) را با اطلاعات SRC بهدستآمده از ابزار Base64 جایگزین کنید. اکنون منبع عکس شما از یک فایل خارجی دیگری نیست در عوض آن، دادههای کدگذاری شده در SRC قرار دارد.
محاسن این کار چیست؟
یکی از محاسن مهم این کار، کاهش تعداد درخواست است (درست مثل css sprite) که این امر نقش موثری در بهینهسازی سایت و سرعت آن دارد.
همچنین در صورتی که یک صفحه از https استفاده کند، لازم است سایر تصاویر و محتواهای خارجی از https بارگذاری شود (و الا کاربر با هشدار کاهش امنیت مواجه میشود) و با توجه به اینکه بارگذاری محتواها از طریق ssl موجب بار اضافی در سرور میگردد، یکی از فواید استفاده از data uri ها مشخص میشود.
همچنین افزودن تصاویر با این روش به ایمیلها، سادهتر از ضمیمه کردن آن به عنوان attach به نظر میرسد.