بررسیکنندهٔ فرمت تصویر
یک صفحه وارد کنید و ببینید کدام تصاویر آن با فرمت AVIF یا WebP به مرورگر مدرن میرسند، کدام فقط با فرمت اصلی خود و این تفاوت چند بایت است. هر تصویر دو بار درخواست میشود: یک بار همانطور که یک مرورگر امروزی درخواست میکند و یک بار مثل مرورگری که هر فرمتی را میپذیرد.
بررسیکننده چه میکند
- HTML صفحه را یک بار میخواند (تا 1.5 MB) و حداکثر 20 تصویر از
<img>(همراه باsrcsetو ویژگیهای رایج بارگذاری تنبل)،<picture>وog:imageبرمیدارد. - هر تصویر را دو بار درخواست میکند: با
Accept: image/avif,image/webp,…همانطور که مرورگر امروزی میفرستد، و باAccept: */*مثل کلاینتی که چیز خاصی نمیخواهد. - بایتهای اول هر پاسخ را میخواند تا فرمت واقعی را بفهمد، هرچه نام فایل یا
Content-Typeبگوید، و بایتها را میشمارد. - هدر
Varyو وضعیت کشی را که CDN نوشته نشان میدهد و حداکثر 3 تغییر مسیر را دنبال میکند و هر نشانی مقصد را دوباره بررسی میکند. - برای یک
<picture>که<source>با فرمت AVIF یا WebP دارد، درخواست مدرن به همان source و درخواست دیگر به<img>میرود: آنجا مرورگر فرمت را انتخاب میکند، نه سرور.
خواندن نتایج
AVIF یا WebP
مرورگری که این فرمتها را پشتیبانی میکند یکی از آنها را دریافت کرد. حجم کنار آن همان چیزی است که آن مرورگر دانلود کرد؛ حجم زیر «سایر مرورگرها» چیزی است که مرورگرِ بدون پشتیبانی AVIF و WebP دریافت میکند.
فقط فرمت اصلی
تصویر حتی به مرورگری که AVIF و WebP خواسته بود با فرمت JPEG، PNG یا GIF رسید: سایت آن را تبدیل نمیکند.
یک فایل برای همهٔ مرورگرها
هر دو درخواست همان فرمت را دریافت کردند. این نتیجهٔ سایتی است که فرمت را بر اساس مرورگر انتخاب نمیکند و سایتی که به همه فایل WebP میدهد. چیزی برای مقایسه نیست، پس صرفهجویی نشان داده نمیشود.
بدون Vary: Accept
پاسخ بر اساس هدر Accept تغییر میکند اما این را با Vary: Accept اعلام نمیکند و کشهای مشترک اجازه دارند آن را نگه دارند. در این حالت یک پراکسی میان سرور و بازدیدکننده ممکن است فایل AVIF یا WebP را به مرورگری بدهد که آن را نخواسته است.
صرفهجویی
فقط تصاویری در جمع حساب میشوند که هر دو پاسخشان کامل خوانده شده و با فرمتهای متفاوت رسیدهاند. حجمی که فقط از Content-Length معلوم است نشان داده میشود اما هرگز جمع زده نمیشود: عدد یک اندازهگیری است، نه تخمین.
محدودیت نرخ یا مسدود شدن
اگر سایتی با 429، 403، بررسی ربات یا صفحهٔ کوچک 503 که محدودکنندههای نرخ میفرستند پاسخ دهد، بررسیکننده در آن بررسی دیگر به آن درخواست نمیفرستد و تصاویر باقیمانده را «بررسینشده» علامت میزند. چند دقیقه بعد دوباره امتحان کنید.
سرور چگونه فرمت را انتخاب میکند
مرورگر فرمتهای تصویری را که میتواند نمایش دهد در هدر Accept فهرست میکند. سرور یا CDNی که تصویر تبدیل میکند آن را میخواند و از همان URL، AVIF، WebP یا فایل اصلی را برمیگرداند. سپس باید Vary: Accept بفرستد تا کشها برای هر فرمت یک نسخه نگه دارند.
راه دیگر در HTML است: یک عنصر <picture> فایلهای <source> با فرمت AVIF و WebP را فهرست میکند و مرورگر نخستین موردی را که پشتیبانی میکند برمیدارد. هر دو روش کار میکنند و بررسیکننده از روشی پیروی میکند که صفحه به کار میبرد.
AVIF یا WebP: کدام کوچکتر است و چه زمانی
محدودیتها و آنچه میفرستیم
- برای هر صفحه حداکثر 20 تصویر روی حداکثر 5 سرور، خواندن حداکثر 5 MB برای هر تصویر و 20 ثانیه برای هر بررسی.
- از یک نشانی 3 بررسی در دقیقه و 20 بررسی در روز. بررسی تمامشده تا 10 دقیقه دوباره استفاده میشود و هر سایت، هر کسی که بخواهد، در 10 دقیقه حداکثر 6 بار بررسی میشود.
- درخواستها از سرور ما در ترکیه و از طریق IPv4 فرستاده میشوند، با User-Agentی که به
cdn.com.tr-image-check/1.0ختم میشود و به این صفحه پیوند میدهد. ممکن است یک CDN از مکانی متفاوت با بازدیدکنندگان شما به ما پاسخ دهد، برخی سایتها کلاینتهای خودکار را مسدود میکنند و سایتی که فقط از طریق IPv6 در دسترس است قابل بررسی نیست. - فقط نشانیهای عمومی روی پورتهای 80 و 443 درخواست میشوند؛ شبکههای خصوصی و داخلی رد میشوند. تصاویر ذخیره نمیشوند: فقط فرمتها، حجمها و چند هدر برمیگردند.
- تصاویری که JavaScript پس از بارگذاری صفحه اضافه میکند و تصاویر پسزمینهٔ CSS در HTML نیستند، پس بررسیکننده آنها را نمیبیند.
تصاویر را روی edge تبدیل کنید
با روشن بودن بهینهسازی تصویر، CDN.com.tr تصاویر JPEG و PNG را برای مرورگرهایی که پشتیبانی میکنند با فرمت WebP ارائه میدهد؛ برای کل حساب یا برای یک قانون تحویل. پردازش از سهمیهٔ ماهانهٔ شما کسر میشود.