Loading...

یادگیری / تجارت الکترونیک

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی

در خرده‌فروشی آنلاین، سرعت یعنی درآمد — اما دانستن این حقیقت با حل کردنش یکی نیست. این راهنما کارِ واقعی را قدم‌به‌قدم نشان می‌دهد: قرار دادن فروشگاه‌تان پشت cdn.com.tr، نوشتن قاعدهٔ کش برای تصاویر محصول، purge کردن هنگام تغییر قیمت، خودکارسازی آن با cdnctl، و مقاوم‌سازی فروشگاه برای روز کمپین.

Updated

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی

چرا سرعت، درآمد تجارت الکترونیک را تعیین می‌کند

در یک فروشگاه فیزیکی، صف کند مشتری را کلافه می‌کند؛ در فروش آنلاین، بی‌صدا سبد خرید را خالی می‌کند. هر چه صفحات کندتر شوند، خریداران بیشتری پیش از خرید صفحه را رها می‌کنند، و این اثر روی موبایل — جایی که اکنون بیشترِ ترافیک خرده‌فروشی اتفاق می‌افتد — از همه‌جا شدیدتر است. سرعت همچنین تعیین می‌کند چند نفر اصلاً به محصولات شما می‌رسند: گوگل تجربهٔ صفحه — از جمله Core Web Vitals مانند Largest Contentful Paint — را به‌عنوان سیگنال رتبه‌بندی به کار می‌گیرد، پس فروشگاه سریع‌تر ترافیک ارگانیک بیشتری هم به دست می‌آورد.

آنچه فروشگاه‌ها را کند می‌کند به‌خوبی شناخته شده است. عکس‌های محصول، گالری‌ها و بنرها بر حجم صفحه غالب‌اند؛ فاصلهٔ میان سرور شما و هر خریدار به هر درخواست تأخیر اضافه می‌کند؛ و پلتفرم فروشگاه در هر بازدید صفحات را با کد و کوئری‌های پایگاه‌داده دوباره می‌سازد. یک CDN به هر سه هم‌زمان حمله می‌کند: داشته‌های سنگین و مشترک را روی سرورهای edge نزدیک به خریداران‌تان کش می‌کند، و بخش‌های شخصی — سبد، حساب، پرداخت — را مستقیم به فروشگاه شما عبور می‌دهد تا قیمت‌ها و موجودی درست بمانند. ادامهٔ این راهنما راه‌اندازی مشخص و قدم‌به‌قدم روی cdn.com.tr است.

گام ۱ — فروشگاه خود را پشت CDN بگذارید

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — گام ۱ — فروشگاه خود را پشت CDN بگذارید
پنل cdn.com.tr شما — سایت اضافه کنید و سرویس‌ها را مدیریت کنید.

در cdn.com.tr ثبت‌نام کنید، روی «Add Your Website» (سایت خود را اضافه کنید) کلیک کنید و Pull CDN را به‌عنوان منبع محتوا انتخاب کنید — CDN صفحات و تصاویر را از فروشگاه فعلی شما (مبدأ) می‌گیرد و از edge سرو می‌کند، پس هیچ چیزی در کد فروشگاه‌تان لازم نیست تغییر کند.

سپس انتخاب می‌کنید ترافیک چگونه به CDN برسد. سه گزینه وجود دارد. «دامنه/زیردامنهٔ سفارشی» انتخاب معمول برای یک فروشگاه است: برای یک زیردامنه (مثلاً cdn.yourstore.com) رکورد CNAME اضافه می‌کنید یا رکورد A دامنهٔ اصلی را به CDN اشاره می‌دهید، و DNS شما هر جا که امروز هست همان‌جا می‌ماند. «انتقال کامل DNS» نیم‌سرورهای شما را به cdn.com.tr منتقل می‌کند تا کل دامنه از یک‌جا مدیریت و سرو شود. «نقطهٔ پایانی پیش‌فرض» بلافاصله یک زیردامنهٔ آمادهٔ cdn.com.tr به شما می‌دهد — برای آزمایش پیش از سپردن دامنهٔ واقعی‌تان کاربردی است.

پس از اتصال، حساب خود را باز کنید و مبدأ را در «پیکربندی منبع محتوا» (Content Source Configuration) تنظیم کنید: آدرس سرورتان، پورت‌ها، و اینکه CDN فقط روی HTTPS به آن وصل شود یا نه. دامنه‌های فروشگاه‌تان را در «نقاط توزیع محتوا» (Content Delivery Points) اضافه کنید، مالکیت را با متاتگ یا رکورد DNS TXT که پنل نشان می‌دهد تأیید کنید، و گزینهٔ «استفاده از گواهی‌های خودکار Let's Encrypt» را علامت بزنید — از آن پس SSL فروشگاه شما به‌طور خودکار صادر و تمدید می‌شود و قفل سبز صفحهٔ پرداخت‌تان هرگز از کار نمی‌افتد.

گام ۲ — قاعدهٔ کشی که بیشترِ کار را انجام می‌دهد

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — گام ۲ — قاعدهٔ کشی که بیشترِ کار را انجام می‌دهد
یک قاعدهٔ توزیع برای داشته‌های استاتیک: regex مسیر به‌همراه زمان کش ۳۰ روزه.

در حساب خود «قواعد توزیع» (Cache and Security) را باز کنید و برای داشته‌های استاتیک‌تان یک قاعده اضافه کنید. قاعده با regex مسیر تطبیق می‌گیرد؛ یک الگوی واحد، عکس‌های محصول، استایل‌شیت‌ها، اسکریپت‌ها و فونت‌ها را یک‌جا پوشش می‌دهد. زمان انقضای کش را طولانی بگذارید — ۳۰ روز برای تصاویر محصول پیش‌فرض خوبی است، چون در گام بعد فایل‌های تغییرکرده را به‌جای انتظار برای انقضای کش، صریحاً purge خواهید کرد. کش مرورگر را هم فعال کنید تا خریداران بازگشتی داشته‌ها را به‌صورت محلی نگه دارند.

دو گزینه در این فرم برای یک فروشگاه بیش از هر جای دیگری اهمیت دارند. نخست، حالت پارامترهای کوئری در کلید کش: لینک‌های کمپین با پارامترهای رهگیری می‌رسند (utm_source، gclid، fbclid)، و با کلید پیش‌فرضِ کوئری کامل، هر واریانت لینک یک کپی کش جداگانه از همان صفحه می‌سازد. قاعده را روی نادیده‌گرفتن پارامترهای فهرست‌شده بگذارید و پارامترهای رهگیری‌تان را فهرست کنید — یک کپی کش‌شده به همهٔ کلیک‌های تبلیغ سرویس می‌دهد. دوم، عبور بر اساس cookie: نام cookieهای سبد/نشست پلتفرم خود را اضافه کنید (برای WooCommerce، woocommerce_items_in_cart و woocommerce_cart_hash) تا لحظه‌ای که خریداری چیزی در سبد می‌گذارد، صفحاتش به مبدأ برود و شخصی بماند، در حالی که بقیه همچنان صفحات کش‌شدهٔ سریع می‌گیرند.

قاعده‌ای ننویسید که همه‌چیز را کش کند. صفحات HTML یک فروشگاه با موجودی و قیمت تغییر می‌کنند؛ آن‌ها را روی TTL کوتاه نگه دارید یا پویا بگذارید و اجازه دهید قاعدهٔ داشته‌ها بار را بکشد — در یک فروشگاه معمول، تصاویر و CSS و جاوااسکریپتی که این قاعده پوشش می‌دهد ۸۰ تا ۹۰ درصد بایت‌های هر صفحه است.

یک regex مسیر برای داشته‌های استاتیک فروشگاه

\.(jpg|jpeg|png|webp|gif|svg|css|js|woff2?)$

# منطبق:   /products/red-shoe-42.jpg   /assets/theme.css
# غیرمنطبق: /  /category/shoes  /cart  /checkout

گام ۳ — بهینه‌سازی تصویر را روشن کنید

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — گام ۳ — بهینه‌سازی تصویر را روشن کنید
گزینه‌های image optimization و compression برای یک قاعدهٔ توزیع.

برای بیشتر فروشگاه‌ها، تصاویر بزرگ‌ترین چیز روی صفحه‌اند، پس بهینه‌سازی‌شان بیش از تقریباً هر کار دیگری نتیجه می‌دهد. بهینه‌سازی یعنی سه چیز که با هم کار می‌کنند: فشرده‌سازی تصاویر تا دادهٔ کمتری حمل کنند، تبدیل‌شان به فرمت‌های مدرن مانند WebP که در همان کیفیت به‌طرز چشمگیری از JPEG/PNG قدیمی کوچک‌ترند، و فرستادن تصویری با اندازهٔ مناسب به‌جای یک نسخهٔ اصلی عظیم که در مرورگر کوچک می‌شود.

روی cdn.com.tr این یک کلید در سطح هر قاعده است: پنل Optimizations قاعدهٔ توزیعی را که در گام ۲ ساختید باز کنید و Image Optimization و Compression را فعال کنید. از آن پس edge عکس‌های محصول شما را فشرده می‌کند و به مرورگرهایی که WebP را می‌پذیرند به‌طور خودکار WebP سرو می‌کند — نسخه‌های اصلی نزد شما می‌ماند و خریداران نسخهٔ سریعِ مناسب صفحه‌شان را می‌گیرند. سود آن مستقیم است: صفحات محصول و دستهٔ سبک‌تر، Largest Contentful Paint سریع‌تر و امتیاز Core Web Vitals بهتری که به رتبه‌گرفتن‌تان کمک می‌کند. جزئیات بیشتر در راهنمای بهینه‌سازی تصویر آمده است.

اگر فروشگاه شما WooCommerce روی هاستینگ خودتان است، افزونهٔ رایگان CDNTR همین کار را از سمت وردپرس انجام می‌دهد: از عکس‌های محصول شما WebP (و در سرورهایی که پشتیبانی کنند AVIF) می‌سازد، رسانهٔ شما را از طریق CDN سرو می‌کند و — همان‌طور که گام بعد توضیح می‌دهد — هنگام تغییر یک محصول، کش را به‌طور خودکار پاک می‌کند.

گام ۴ — با تغییر قیمت یا موجودی purge کنید

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — گام ۴ — با تغییر قیمت یا موجودی purge کنید
Page Purge — صفحات تغییرکردهٔ محصول و دسته را بر اساس مسیر پاک کنید.

کش ۳۰ روزه فقط وقتی امن است که صفحات تغییرکرده را همان لحظهٔ تغییر پاک کنید. purge برای همین است، و دقت اهمیت دارد: محصولی را که تغییر کرده purge کنید، نه کل سایت را.

در پنل، «پاکسازی کش» (Purge Management) را باز کنید و روی Page Purge کلیک کنید. هر مسیر را در یک خط بچسبانید و نوع تطبیق را انتخاب کنید: «همین URLها (تطبیق دقیق)» دقیقاً همان مسیرها را پاک می‌کند؛ «همه‌چیز زیر این پوشه‌ها (*)» یک پیشوند کامل را پاک می‌کند — پس از ایمپورت گروهی قیمت در یک دسته کاربردی است؛ «همهٔ واریانت‌های این URLها» واریانت‌های موبایل/دسکتاپ و query-string همان صفحه را هم پاک می‌کند. می‌توانید یک مجموعه‌قاعده ذخیره کنید — مثلاً صفحهٔ اصلی، صفحهٔ کمپین و دستهٔ پرفروش‌ها — و صبح روز کمپین با یک کلیک دوباره اجرایش کنید. «Clear All» هم وجود دارد، اما آن را آخرین راه‌حل بدانید: کل کش را خالی می‌کند و پس از آن، تا پر شدن دوبارهٔ کش، همهٔ خریداران یک‌جا به مبدأ شما می‌خورند.

اگر فروشگاه شما WooCommerce است، اصلاً لازم نیست دستی purge کنید. افزونهٔ CDNTR به وردپرس قلاب می‌شود: وقتی محصولی را به‌روزرسانی می‌کنید، صفحهٔ محصول، صفحهٔ فروشگاه و همهٔ دسته‌هایی را که محصول به آن‌ها تعلق دارد purge می‌کند؛ وقتی دسته‌ای را ویرایش یا قالب را عوض می‌کنید، متناسب با آن purge می‌کند — و سپس کش را دوباره گرم می‌کند تا حتی نخستین بازدیدکنندهٔ پس از تغییر هم صفحه‌ای کش‌شده از edge بگیرد.

گام ۵ — با cdnctl خودکارش کنید (و بگذارید AI شما هم از آن استفاده کند)

همهٔ آنچه گفته شد از خط فرمان هم قابل اجراست. cdnctl ابزار CLI باز cdn.com.tr است: با اطلاعات ورود پنل خود login می‌کنید، حساب‌تان را یک‌بار انتخاب می‌کنید و از اسکریپت‌ها، jobهای cron یا pipelineهای deploy purge می‌کنید. هر فرمان JSON چاپ می‌کند، که آن را برای انسان‌ها، سیستم‌های CI و agentهای هوش مصنوعی به یک اندازه قابل استفاده می‌کند — اگر مدیریت فروشگاه‌تان را به یک دستیار بسپارید، می‌تواند خروجی را بخواند و CDN را برای شما اداره کند. برای محیط‌های غیرتعاملی، به‌جای login متغیرهای محیطی CDN_ACCESS_TOKEN و CDN_ACCOUNT را تنظیم کنید.

الگویی که بیش از همه به تجارت الکترونیک می‌خورد: کاری کنید ERP، PIM یا اسکریپت ایمپورت شما پس از نوشتن قیمت‌های جدید cdnctl را صدا بزند — محصولات تغییر می‌کنند و صفحه‌هایشان در چند ثانیه روی edge تازه است، بی‌آنکه کسی پنل را باز کند. اگر ترجیح می‌دهید مستقیم یکپارچه شوید، API کامل CDN هم در دسترس است.

نصب، ورود، purge — کل چرخه
curl -fsSL https://cdn.com.tr/downloads/cdnctl/install.sh | sh
cdnctl login --email you@yourstore.com     # گذرواژه پرسیده می‌شود، پنهان
cdnctl accounts ls                          # UUID حساب خود را پیدا کنید
cdnctl accounts use <uuid>                  # آن را پیش‌فرض کنید

# قیمت یک محصول تغییر کرد:
cdnctl purge --path /product/running-shoes-42 --path /category/shoes/

# ایمپورت گروهی یک دستهٔ کامل را تغییر داد:
cdnctl purge --path /category/shoes/ --type prefix

# گزینهٔ نهایی (کل کش را خالی می‌کند):
cdnctl purge all --yes
cdnctl purge all status

گام ۶ — چک‌لیست روز کمپین

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — گام ۶ — چک‌لیست روز کمپین
security در سطح قاعده: قواعد IP، rate limiting و حفاظت hotlink.

لحظه‌هایی که یک فروشگاه بیش از همه باید سریع بماند، همان لحظه‌هایی است که بیشترین فشار را تحمل می‌کند: Black Friday، یک کمپین تخفیف، یک عرضه. کش روی edge حساب را عوض می‌کند — هزاران خریداری که همان صفحهٔ کمپین را باز می‌کنند از کپی‌های کش‌شدهٔ نزدیک خودشان سرو می‌شوند و مبدأ شما فقط سبدها و پرداخت‌ها را رسیدگی می‌کند — اما یک روز کمپینِ آرام همچنان به آمادگی نیاز دارد.

پیش از کمپین: مطمئن شوید قاعدهٔ داشته‌های گام ۲ با تصاویر صفحهٔ کمپین‌تان تطبیق می‌گیرد، صفحات کمپین و دسته‌ها را purge کنید تا آنچه کش می‌شود قیمت‌های جدید باشد، سپس همان صفحات را یک‌بار خودتان باز کنید — این بازدید، کش edge را گرم می‌کند. درست پیش از اوج ترافیک Clear All اجرا نکنید؛ مسیرهای مشخصی را که تغییر کرده‌اند purge کنید.

برای حفاظت، پنل Security قواعد توزیع خود را باز کنید و برای درخواست‌ها rate limit بگذارید تا هیچ کلاینت واحدی نتواند مبدأ شما را بکوبد. در صفحهٔ Security، حفاظت Bot (JS Challenge) را روی حالت «بازدیدکنندگان پرریسک» بگذارید — IPهای دیتاسنتر، پراکسی‌های ناشناس و crawlerهای جعلی یک بررسی جاوااسکریپت می‌گیرند، در حالی که خریداران واقعی و موتورهای جست‌وجوی تأییدشده بدون مزاحمت عبور می‌کنند. اگر فروشگاه‌تان به بازارهای مشخصی می‌فروشد، می‌توانید با کدهای ISO کشور هم محدودیت بگذارید. WAF و حفاظت DDoS از پیش روی edge جلوی شما فعال‌اند؛ راهنمای امنیت edge شرح می‌دهد چه چیزهایی را جذب می‌کنند.

یا سرهم‌بندی را رها کنید: فروشگاه را روی cdn.com.tr میزبانی کنید

CDN برای تجارت الکترونیک: راهنمای عملی راه‌اندازی — یا سرهم‌بندی را رها کنید: فروشگاه را روی cdn.com.tr میزبانی کنید
پلتفرم‌های مدیریت‌شده و container apps روی cdn.com.tr.

همهٔ این راهنما فرض می‌کرد فروشگاه شما هاستینگ خودش را دارد و CDN جلوی آن می‌نشیند. راه کوتاه‌تری هم هست: میزبانی فروشگاه روی خود cdn.com.tr. هاستینگ مدیریت‌شدهٔ وردپرس با وردپرسِ آمادهٔ WooCommerce، یکپارچگی CDNTR، کش روی edge، بهینه‌سازی تصویر و SSL خودکار از پیش سیم‌کشی‌شده می‌آید — گام‌های ۱ تا ۴ این راهنما عملاً از روز اول برای شما انجام شده است. اگر به‌جای آن یک پشتهٔ سفارشی دارید، می‌توانید کانتینرهای اپلیکیشن خودتان را پشت همان edge مستقر کنید و رسانهٔ محصول را در object storage سازگار با S3 نگه دارید که همان شبکه تحویلش می‌دهد.

در هر دو حالت، CDN، بهینه‌سازی تصویر، WAF، حفاظت DDoS، SSL، هاستینگ و storage زیر یک پنل و یک صورتحساب جمع‌اند — یک‌جا برای اداره کردن فروشگاه، به‌جای به‌هم‌دوختن سرویس‌ها.

CDN تجارت الکترونیک کجا بیشترین بازده را دارد

کاتالوگ‌های پرتصویر

مد، مبلمان، الکترونیک — فروشگاه‌هایی با گالری‌های بزرگ بیشترین سود را از توزیع edge و بهینه‌سازی خودکار تصویر می‌برند.

کمپین‌ها و حراج‌های فوری

کش روی edge موج ترافیک یک ایمیل تخفیف یا یک عرضه را جذب می‌کند تا فروشگاه در اوج فروش به‌جای از پا افتادن، سریع بماند.

فروش در چند منطقه

edgeهای محلی خریداران ترکیه را سریع و خریداران بین‌المللی را از نزدیکی سرو می‌کنند، تا مخاطبان گسترده‌تری تجربه‌ای سریع بگیرند.

عملیات خودکار

cdnctl و REST API به اسکریپت‌های ایمپورت، jobهای CI و agentهای هوش مصنوعی شما اجازه می‌دهند بدون حضور انسانی در پنل، purge و مدیریت CDN را انجام دهند.

پرسش‌های پرتکرار CDN تجارت الکترونیک

آیا CDN سبد یا پرداخت من را خراب می‌کند؟

خیر. قاعدهٔ داشته‌ها در این راهنما فقط فایل‌های استاتیک (تصاویر، CSS، جاوااسکریپت) را کش می‌کند، و گزینهٔ عبور بر اساس cookie هر خریداری را که چیزی در سبد دارد مستقیم به فروشگاه شما می‌فرستد. قیمت‌ها، موجودی و مبالغ برای هر خریدار درست می‌مانند؛ فقط داشته‌های سنگین و مشترک کش و شتاب‌دهی می‌شوند.

محصول را به‌روزرسانی کردم اما خریداران قیمت قدیمی را می‌بینند — چرا؟

صفحهٔ قدیمی هنوز روی edge کش است. مسیر محصول (و صفحهٔ دسته‌اش) را از «پاکسازی کش» در پنل یا با cdnctl پاک کنید؛ اگر فروشگاه WooCommerce است، افزونهٔ CDNTR را نصب کنید تا این purge هر بار که محصولی را ذخیره می‌کنید خودکار انجام شود.

سریع‌ترین تغییر منفرد برای سریع‌تر کردن فروشگاه من چیست؟

برای بیشتر فروشگاه‌ها، بهینه‌سازی تصویر — فشرده‌سازی عکس‌های محصول و سرو فرمت‌های مدرن مانند WebP در اندازهٔ درست. تصاویر معمولاً بر حجم صفحه غالب‌اند، پس همین به‌تنهایی اغلب زمان بارگذاری و Core Web Vitals را به‌طور محسوس بهتر می‌کند. روی cdn.com.tr این یک کلید در پنل Optimizations قاعدهٔ توزیع شماست.

آیا می‌توانم این را با WooCommerce استفاده کنم؟

بله. می‌توانید با پیروی از این راهنما cdn.com.tr را جلوی فروشگاه WooCommerce موجود بگذارید، یا آن را روی پلتفرم وردپرس مدیریت‌شدهٔ cdn.com.tr میزبانی کنید که CDN، کش، بهینه‌سازی تصویر و SSL در آن از پیش پیکربندی شده‌اند. افزونهٔ رایگان CDNTR در هر دو حالت purge خودکار و تبدیل WebP/AVIF را اضافه می‌کند.

آیا می‌توانم purgeها را از ERP یا اسکریپت‌های ایمپورت خودکار کنم؟

بله. ابزار CLI به‌نام cdnctl با اطلاعات ورود پنل شما login می‌کند و از هر اسکریپتی مسیرها، پیشوندها یا کل کش را purge می‌کند، با خروجی JSON و احراز هویت با متغیر محیطی (CDN_ACCESS_TOKEN) برای CI. اگر یکپارچگی مستقیم را ترجیح می‌دهید REST API هم هست.

CDN در یک حراج بزرگ چه کمکی می‌کند؟

در یک اوج ترافیک، کش روی edge انبوه خریدارانی را که به همان صفحات کمپین و دسته می‌زنند از کپی‌های نزدیک‌شان سرو می‌کند به‌جای اینکه مبدأتان را overload کند، و سرور شما فقط گام‌های واقعاً پویای سبد و پرداخت را رسیدگی می‌کند. یک rate limit برای درخواست‌ها و حفاظت bot در حالت «بازدیدکنندگان پرریسک» اضافه کنید تا فروشگاه زیر ازدحام پاسخگو بماند.