رفتن به محتوا
AdPixمستنداتجست‌وجو در مستنداتفارسیورود به کنسول

دروازه تگ فرست‌پارتی

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

دروازه تگ چه چیزی را عوض می‌کند#

در حالت پیش‌فرض، فایل تراکر از دامنه شبکه توزیع محتوای ادپیکس بارگذاری می‌شود و بیکن به دامنه گیرنده می‌رود. هر دو دامنه‌هایی بیرون از سایت شما هستند: فهرست‌های مسدودکننده تبلیغات آن‌ها را می‌شناسند، و کوکی‌ای که گیرنده می‌خواست بنویسد کوکی شخص ثالث است.

با دروازه تگ، یک زیردامنه از دامنه خودتان — به‌طور پیش‌فرض metrics.<دامنه شما> — جلوی همه این ترافیک می‌نشیند و آن را به ادپیکس پروکسی می‌کند.

موضوع تگ مستقیم دروازه تگ
میزبان فایل تراکر دامنه شبکه توزیع محتوای ادپیکس زیردامنه خودتان
مقصد بیکن دامنه گیرنده ادپیکس همان زیردامنه خودتان
کوکی گیرنده نوشته نمی‌شود (شخص ثالث) نوشته می‌شود (فرست‌پارتی)
افت به‌خاطر مسدودکننده تبلیغات حدود ۲۵٪ حدود ۳ تا ۸٪
کاری که باید بکنید فقط قطعه‌کد یک رکورد CNAME و یک پروکسی معکوس

هویت در هر دو حالت کار می‌کند؛ در حالت مستقیم روی شناسه ماندگاری که تراکر در حافظه محلی نگه می‌دارد سوار است. آنچه دروازه اضافه می‌کند، ماندگاری بیشتر و سطح مسدودشدن کمتر است.

دروازه، تگ مستقیم را کنار نمی‌زند

ساختن بسته هیچ چیزی را خاموش نمی‌کند. صفحه دستورالعمل نصب پس از آن دو قطعه‌کد نشان می‌دهد — مستقیم و دروازه — و شما یکی را در صفحه می‌گذارید. تا آن لحظه سایت شما دقیقا مثل قبل داده می‌فرستد.

چیزی که لازم دارید#

  • دسترسی به DNS دامنه، برای یک رکورد CNAME.
  • یک پروکسی معکوس که گواهی TLS آن زیردامنه را داشته باشد. کنسول پیکربندی آماده برای Caddy، nginx و Cloudflare Worker می‌دهد.
  • نقش «ویرایش‌گر» یا بالاتر روی آن دارایی — ساخت بسته یک اعتبارنامه صادر می‌کند، پس مثل هر تغییر تنظیمات دارایی محافظت شده است. دیدن بسته ساخته‌شده با دسترسی خواندن گزارش هم ممکن است.

بسته را بسازید#

۱
در کنسول «مدیریت» ← «تنظیمات دارایی» ← «جریان‌های داده» را باز کنید و روی جریان مورد نظر بزنید.
۲
بخش «دروازه تگ (فرست‌پارتی)» را باز کنید. زیردامنه پیش‌فرض metrics است و می‌توانید عوضش کنید؛ عوض کردنش بسته را از نو می‌سازد و توکن پروکسی تازه صادر می‌کند.
۳
بسته را بسازید. خروجی شامل رکورد DNS، توکن پروکسی، قطعه‌کد دروازه، آدرس بررسی سلامت و سه پیکربندی پروکسی است.
۴
رکورد CNAME را در DNS بگذارید — دقیقا همان چیزی که در بسته چاپ شده، یعنی زیردامنه شما به میزبان دروازه ادپیکس.
۵
یکی از سه پیکربندی را روی پروکسی خود بگذارید و سرویس را بارگذاری مجدد کنید. صبر کنید تا گواهی TLS آن زیردامنه صادر شود.
۶
قطعه‌کد دروازه را جای قطعه‌کد مستقیم در <head> سایت بگذارید.
۷
عیب‌یابی دروازه را از همان بخش اجرا کنید.
ساخت بستهٔ دروازه تگ: رکورد DNS و پیکربندی Caddy/nginx/Cloudflare.

بسته هر جریان داده روی خود جریان ذخیره می‌شود — توکن رمزگذاری‌شده نگه‌داری می‌شود و هر بار که بخش را باز کنید دوباره ساخته و نمایش داده می‌شود. پس لازم نیست جایی کپی نگه دارید و لازم هم نیست برای دیدن دوباره‌اش بسته را از نو بسازید. جادوگر مستقل «تنظیمات» رفتار قدیمی‌تری دارد: توکن را فقط همان یک بار نشان می‌دهد.

مسیرهایی که باید پروکسی شوند#

این مهم‌ترین بخش این صفحه است. پیکربندی تولیدشده یک فهرست سفید دقیق دارد و هر چیز خارج از آن 404 می‌گیرد. فهرست، کل سطح تراکر است، نه فقط فایل تراکر و بیکن:

مسیر چه چیزی از آن عبور می‌کند
/t.js و /t/* فایل پایه تراکر
/collect مسیر اصلی ارسال رویداد
/i تصویر تک‌پیکسلی پشتیبان
/id نام مستعار ارسال رویداد
/apx/* و /sov/* پیکربندی جریان: اندازه‌گیری پیشرفته، دامنه‌های میان‌دامنه‌ای، نقشه حرارتی، بلوک رضایت
/consent.js بنر رضایت فرست‌پارتی
/consent/* پیکربندی کامل بنر و ثبت سند رضایت
/fpx.js بسته غنی‌سازی اثر انگشت
/hm.js و /hm و /hm/* بسته ثبت نقشه حرارتی، نمونه‌ها، تصویر ساختار صفحه
/_apx_health و /_sov_health بررسی سلامت پروکسی
جا افتادن یک مسیر، بی‌صدا خراب می‌کند

اگر مسیری در فهرست سفید نباشد، پروکسی شما برایش 404 برمی‌گرداند و هیچ خطایی هم در کنسول ادپیکس ثبت نمی‌شود. نتیجه‌اش این است: بدون /consent/* بنر رضایت روی دامنه شما بالا نمی‌آید و رضایتی ثبت نمی‌شود؛ بدون /apx/* تراکر به تنظیمات پیش‌فرض اندازه‌گیری پیشرفته برمی‌گردد؛ بدون /hm* نقشه‌های حرارتی هیچ نمونه‌ای نمی‌گیرند. پیکربندی را از بسته کپی کنید و فهرست مسیرها را کوتاه نکنید.

نسخه‌های Caddy، nginx و Cloudflare Worker از یک منبع واحد ساخته می‌شوند، پس هر سه دقیقا همین فهرست را دارند. اگر پروکسی دیگری دارید، همین فهرست را کامل به آن منتقل کنید.

هدرهایی که پروکسی اضافه می‌کند#

پیکربندی تولیدشده چهار هدر روی هر درخواست می‌گذارد:

هدر کارش
X-Site-Key به گیرنده می‌گوید این درخواست از دروازه یک مشتری آمده
X-Site-Token اعتبارنامه‌ای که آن دروازه را احراز هویت می‌کند
X-Forwarded-For آدرس IP واقعی بازدیدکننده
X-Real-IP همان، برای پروکسی‌هایی که این را می‌خوانند

دو هدر آخر را جدی بگیرید: بدون آن‌ها گیرنده IP سرور پروکسی شما را می‌بیند و کشور، شهر و شبکه همه بازدیدکنندگان یکی می‌شود. پیکربندی Caddy و nginx هر چهار هدر را می‌گذارند؛ Cloudflare Worker فقط دو هدر X-Site-* را می‌گذارد، چون خود کلادفلر آدرس بازدیدکننده را فوروارد می‌کند.

هر درخواستی که X-Site-Key داشته باشد باید X-Site-Token معتبر هم داشته باشد، وگرنه پاسخ 403 است. درخواست‌های حالت مستقیم که این هدر را ندارند دست‌نخورده می‌مانند.

چرخش توکن، بدون قطعی#

توکن پروکسی یک اعتبارنامه است و دیر یا زود باید عوض شود — بعد از ترک یک همکار، بعد از یک نشت پیکربندی، یا فقط به‌عنوان بهداشت دوره‌ای. از توکن فقط هش argon2id نگه‌داری می‌شود.

نکته‌ای که چرخش را بی‌درد می‌کند این است: گیرنده هر توکن ابطال‌نشده آن دارایی را می‌پذیرد. یعنی می‌شود چند توکن را همزمان معتبر داشت.

۱
بسته تازه بسازید. توکن تازه صادر می‌شود و توکن قدیمی همچنان معتبر است.
۲
پیکربندی پروکسی را با توکن تازه دیپلوی کنید و مطمئن شوید ترافیک واقعا از آن عبور می‌کند.
۳
حالا توکن قدیمی را ابطال کنید.

فهرست و ابطال از رابط برنامه‌نویسی انجام می‌شود:

curl 'https://api.adpix.io/api/v1/proxy-tokens?site=<property_id>' \
  -H 'Cookie: ap_admin=…'

فهرست فقط پیشوند هشت‌کاراکتری هر توکن را نشان می‌دهد، نه خود مقدار را؛ همان پیشوند برای ابطال کافی است. فهرست‌کردن با دسترسی خواندن گزارش ممکن است، ابطال نیاز به اختیار ویرایش تنظیمات دارایی دارد.

ترتیب را جابه‌جا نکنید

اگر توکن قدیمی را پیش از دیپلوی پیکربندی تازه ابطال کنید، پروکسی شما تا لحظه دیپلوی برای هر درخواست 403 می‌گیرد و در آن فاصله هیچ داده‌ای جمع نمی‌شود. ابطال، آخرین گام است نه اولین.

عیب‌یابی#

از همان بخش «دروازه تگ» می‌توانید عیب‌یابی را اجرا کنید. چهار بررسی به ترتیب انجام می‌شود و هر کدام راه‌حل خودش را هم می‌گوید:

بررسی یعنی چه اگر رد شد
DNS زیردامنه به آدرسی resolve می‌شود رکورد CNAME را اضافه یا اصلاح کنید
سلامت پروکسی /_sov_health روی زیردامنه پاسخ 200 می‌دهد پروکسی بالا نیست یا گواهی TLS آن زیردامنه معتبر نیست
ارائه تگ /t.js از پشت پروکسی واقعا بایت‌های تراکر را برمی‌گرداند پروکسی مسیر را فوروارد نمی‌کند یا هدرهای بسته را نمی‌گذارد
رسیدن داده در ۲۴ ساعت گذشته رویدادی از آن دامنه رسیده قطعه‌کد دروازه هنوز در صفحه نیست، یا هنوز کسی صفحه‌ای باز نکرده

سه بررسی اول تشخیصی‌اند و می‌گویند چرا داده نمی‌آید. بررسی چهارم قطعی است: تا وقتی رویداد واقعی نرسد، وضعیت جریان «تایید‌شده» نمی‌شود.

وضعیت خود جریان هم همین را نشان می‌دهد و پنج حالت دارد: در انتظار نصب، پروکسی فعال، تگ در صفحه پیدا شد، در حال دریافت داده، و خطا. «در حال دریافت داده» تنها حالتی است که به معنای پایان کار است.

آدرس بررسی سلامت را جداگانه هم می‌توانید صدا بزنید؛ در بسته چاپ شده و پاسخ 200 آن یعنی پروکسی زنده است و به ادپیکس می‌رسد.

بعد از راه‌اندازی#

  • قطعه‌کد را عوض کنید. تا وقتی صفحه شما هنوز تگ مستقیم را بارگذاری می‌کند، دروازه بالا هست ولی هیچ ترافیکی از آن عبور نمی‌کند.
  • یک مسیر نصب داشته باشید. تگ را همزمان از قالب سایت و تگ منیجر نگذارید.
  • بعد از هر تغییر در پروکسی، دوباره عیب‌یابی را اجرا کنید. ارتقای Caddy یا nginx گاهی فهرست مسیرها را از دست می‌دهد و اولین نشانه‌اش خالی‌شدن بنر رضایت یا نقشه حرارتی است، نه افت شمار بازدید.

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

پرسش‌های پرتکرار#

با ساختن بسته دروازه، تگ مستقیم از کار می‌افتد؟

خیر. تگ مستقیم همیشه در دسترس می‌ماند و صفحه دستورالعمل نصب هر دو قطعه‌کد را کنار هم نشان می‌دهد. دروازه تگ یک افزوده است، نه جایگزین؛ تا وقتی قطعه‌کد صفحه را عوض نکرده‌اید هیچ چیز تغییر نمی‌کند.

اگر یکی از مسیرها را در پیکربندی پروکسی جا بیندازم چه می‌شود؟

همان قابلیت روی دامنه شما بی‌صدا 404 می‌گیرد و هیچ خطایی در کنسول ادپیکس دیده نمی‌شود. جا افتادن /consent/* یعنی بنر رضایت بالا نمی‌آید، جا افتادن /apx/* یعنی اندازه‌گیری پیشرفته به تنظیمات پیش‌فرض برمی‌گردد، و جا افتادن /hm* یعنی نقشه‌های حرارتی چیزی ثبت نمی‌کنند. پیکربندی تولیدشده را دست‌کاری نکنید.

چرخاندن توکن پروکسی باعث قطعی می‌شود؟

نه، اگر ترتیب را رعایت کنید. گیرنده هر توکن ابطال‌نشده این دارایی را می‌پذیرد، پس توکن تازه و قدیمی همزمان معتبرند. اول بسته تازه را بسازید، بعد پروکسی را با توکن تازه دیپلوی کنید، و تنها در پایان توکن قدیمی را ابطال کنید.

چرا با دروازه تگ کوکی نوشته می‌شود ولی در حالت مستقیم نه؟

چون در مسیر مستقیم میان‌دامنه‌ای، کوکی گیرنده یک کوکی شخص ثالث است که مرورگرها آن را مسدود یا پارتیشن می‌کنند؛ ادپیکس عمدا آنجا هیچ کوکی نمی‌نویسد و هویت روی شناسه ماندگار حافظه محلی سوار است. درخواستی که از دروازه شما می‌آید هدر X-Site-Key دارد و فرست‌پارتی شمرده می‌شود، پس کوکی‌ها دوباره نوشته می‌شوند.

با API بسازیدبفهمید درآمد از کجا می‌آید.
آیا این صفحه مفید بود؟