توسعهدهندگان
هدایت به فروشگاه برنامه باید 301 باشد یا 302؟
هدایتی که به دستگاه بستگی دارد باید موقت بماند. چرا 301 به App Store یا Google Play بعداً دردسر میسازد.
پاسخ کوتاه
از 302 (یا 307) استفاده کنید: هدایتی که iPhone را به App Store و گوشیهای Android را به Google Play میفرستد، به هر دستگاه پاسخ متفاوتی میدهد و ممکن است بعداً تغییر کند. مرورگرها 301 را نگه میدارند و دفعهٔ بعد از سرور شما میگذرند، پس نشانی فروشگاهی که بعداً اصلاح میکنید همچنان بازدیدکنندگان بازگشتی را به نشانی قدیمی میفرستد. OneStoreLink (onestore.link) با 302 پاسخ میدهد، پس مقصد ویرایششده از ضربهٔ بعدی اعمال میشود.
آخرین بازبینی: 2026-11-03
این انتخاب هنگام نوشتن هدایت جزئی به نظر میرسد، و همین است که تعیین میکند آیا روزی میتوانید مقصد را تغییر دهید یا نه. مرورگرها 301 را «این نشانی برای همیشه جابهجا شده» میدانند و به خاطر میسپارند؛ 302 یعنی «این بار برو آنجا». برای پیوندی که روی کد QR چاپ شده یا در بیو چسبانده شده و ماهها استفاده میشود، این تفاوت از هر چیز دیگری در هدایت مهمتر است. این راهنما توضیح میدهد کدام کد را به کار ببرید، چرا، و هدایت به فروشگاه چه چیز دیگری باید بفرستد.
مشکل
- 301 به مرورگرها میگوید جابهجایی دائمی است و آنها نگهش میدارند: بازدید بعدی میتواند بدون پرسیدن از سرور شما به فروشگاه برود.
- اگر نشانی فروشگاه بعداً تغییر کند، صفحهٔ جدید در فروشگاه، نام بستهٔ جدید، غلط تایپی اصلاحشده، بازدیدکنندگان بازگشتی ممکن است همچنان به نشانی قدیمی فرستاده شوند.
- هدایت بر اساس دستگاه به iPhone و گوشی Android پاسخهای متفاوتی میدهد، چیزی که هدایت دائمی توصیفش نمیکند.
- نشانی هدایتی که موتورهای جستوجو نمایه کنند، صفحهای اضافه میکند که فقط برای فرستادن مردم به جای دیگر وجود دارد.
با onestore.link
- با 302 پاسخ دهید (یا 307 که روش درخواست را هم حفظ میکند): مرورگرها در هر بازدید دوباره از سرور شما میپرسند.
- مقصد را در هر درخواست، از روی User-Agent بازدیدکننده انتخاب کنید تا هر تغییری که میدهید فوراً اعمال شود.
- روی هدایت سرآیند X-Robots-Tag: noindex بگذارید تا خود پیوند کوتاه از نتایج جستوجو بیرون بماند.
- onestore.link با یک 302 و سرآیند X-Robots-Tag: noindex پاسخ میدهد و میتوانید هر زمان نشانیهای فروشگاه را بدون تغییر پیوندی که به اشتراک گذاشتهاید ویرایش کنید.
چطور انجامش دهیم
بدون SDK، بدون ساخت دوباره. فقط یک URL.
- 1
یک هدایت موقت برگردانید
فروشگاه را از روی User-Agent انتخاب کنید و با وضعیت 302 پاسخ دهید. اینجا به شکل یک Cloudflare Worker؛ همین منطق روی هر سروری کار میکند.
// هدایت موقت: مرورگرها در هر بازدید دوباره از سرور شما میپرسند export default { fetch(req) { const ua = req.headers.get("user-agent") || ""; const ios = "https://apps.apple.com/app/id0000000000"; const android = "https://play.google.com/store/apps/details?id=com.example.app"; const web = "https://example.com/download"; const to = /iPhone|iPad|iPod/.test(ua) ? ios : /Android/i.test(ua) ? android : web; return new Response(null, { status: 302, headers: { Location: to, "X-Robots-Tag": "noindex" } }); }, }; - 2
رایانهها را به یک صفحه بفرستید، نه به فروشگاه
صفحهٔ فروشگاه نمیتواند چیزی روی رایانه نصب کند. بازدیدکنندگان رایانه را به صفحهای با هر دو دکمهٔ فروشگاه و یک کد QR بفرستید که iPadهایی را هم که خود را Mac معرفی میکنند پوشش میدهد.
- 3
یا از یک پیوند میزبانیشده استفاده کنید
یک onestore.link با دو نشانی فروشگاه خود بسازید: برای هر دستگاه با 302 پاسخ میدهد، پیوند کوتاه را از نمایه بیرون نگه میدارد و اجازه میدهد بعداً مقصد را تغییر دهید.
پرسشهای پرتکرار
آیا 301 برای پیوند دانلود برنامه بد است؟
پرخطر است. مرورگرها ممکن است 301 را نگه دارند و دیگر از سرور شما نپرسند، پس مقصدی که بعداً تغییر میدهید به بازدیدکنندگانی که قبلاً پیوند را دنبال کردهاند نمیرسد. 302 بدون هیچ هزینهای از این جلوگیری میکند.
302 یا 307؟
هر دو موقتاند. 307 تضمین میکند روش درخواست حفظ شود؛ برای پیوندی که مردم رویش ضربه میزنند و همیشه GET است، این دو یکسان رفتار میکنند. 302 انتخاب رایج است.
آیا 302 به SEO آسیب میزند؟
برای چنین پیوندی نه. هدایت به فروشگاه صفحهای نیست که بخواهید رتبه بگیرد؛ صفحهای که باید رتبه بگیرد وبسایت شماست. هدایت را noindex کنید و از صفحههای خودتان به سایتتان پیوند دهید.
onestore.link چه میفرستد؟
یک 302 به App Store برای User-Agentهای iPhone و iPad و به Google Play برای Android، با سرآیند X-Robots-Tag: noindex. مرورگرهای درونبرنامهای و رایانهها بهجای آن یک صفحه میگیرند، چون آنجا یک هدایت خام شکست میخورد یا چیزی نصب نمیکند.
آمادهاید امتحانش کنید؟
همیشه رایگان، بدون رمز عبور. پیوندتان در حدود یک دقیقه آماده است.
پیوند رایگان خود را بسازیددر حال مقایسهٔ ابزارها هستید؟ onestore.link در برابر bitly →