Перейти до вмісту
AppFoyer
Почати

Посібники app-ads.txt

Як розмістити app-ads.txt, якщо у вас немає вебсайту

Що насправді потрібно краулеру, три способи дати йому хост без створення сайту, пастки з переспрямуваннями в кожному з них і як переконатися, що все працює.

Вебсайт вам не потрібен — лише ім’я хоста під вашим контролем, яке віддає /app-ads.txt як звичайний текст із HTTP 200 і без переспрямування. Вкажіть цю адресу в полі вебсайту розробника на сторінці застосунку в магазині — в App Store це Marketing URL, — і краулер прочитає файл там. AdMob називає Firebase Hosting прийнятним варіантом.

Зробіть це за кілька хвилин

AppFoyer розміщує сторінки, про які цей посібник, — політику конфіденційності, умови, підтримку, видалення акаунта та app-ads.txt — на власному піддомені, без вашого домену й сервера. Один застосунок — безкоштовно, і ніщо з того, чого вимагає магазин, ніколи не буває за платним доступом.

Перевірено 12 жовтня 2026 р.. Політики магазинів змінюються, іноді без попередження. Усе нижче посилається на офіційну документацію, і авторитетом є та сторінка, а не ця. Якщо вони розходяться, правий магазин. Цей посібник перекладено з англійської; цитати з документації магазинів наведено в англійському оригіналі.

Вебсайт вам не потрібен — лише ім’я хоста під вашим контролем, яке віддає /app-ads.txt як звичайний текст із HTTP 200 і без переспрямування. Вкажіть цю адресу в полі вебсайту розробника на сторінці застосунку в магазині — в App Store це Marketing URL, у Google Play це Website у розділі Store listing contact details, — і краулер прочитає файл там.

AdMob каже про це прямо: “If you don’t have a suitable website that allows the uploading of an app-ads.txt file at the root level, you can use Firebase Hosting to host your app-ads.txt file.” (Якщо у вас немає відповідного вебсайту, який дозволяє завантажити файл app-ads.txt на кореневий рівень, ви можете розмістити свій файл app-ads.txt у Firebase Hosting.) Хостинг на платформі — це очікувана відповідь, а не обхідний шлях.

Що насправді потрібно краулеру

Краулер не шукає ваш застосунок за назвою пакета. Він бере вебсайт розробника зі сторінки застосунку в магазині, залишає ім’я хоста й завантажує /app-ads.txt у його корені. Правила AdMob:

  • Корінь, а не шлях. Якщо сторінка в магазині вказує на example.com/myapp, перевіряється example.com/app-ads.txt.
  • Один рівень піддоменів. Краулер “probe[s] up to one subdomain level from the developer website” (перевіряє щонайбільше один рівень піддоменів від вебсайту розробника). www. і m. вважаються самим доменом.
  • Звичайна віддача. 200 OK, Content-Type: text/plain, без переспрямування, без входу в обліковий запис, і нічого в robots.txt, що його блокує.

Отже, завдання таке: одна адреса, яка не зміниться, що роками правильно віддає один текстовий файл. Усі три варіанти нижче це роблять; вони відрізняються тим, скільки вам доведеться підтримувати.

Варіант 1: Firebase Hosting

Той, який називає AdMob. Безкоштовний проєкт Firebase дає вам ім’я хоста на кшталт your-project.web.app.

  1. Створіть проєкт у консолі Firebase і встановіть Firebase CLI.
  2. У порожній папці виконайте firebase init hosting і залиште каталог public за замовчуванням.
  3. Покладіть свій app-ads.txt у public/, поруч зі згенерованим index.html.
  4. Виконайте firebase deploy --only hosting.
  5. Вкажіть https://your-project.web.app як вебсайт розробника на кожній сторінці застосунку в магазинах.

Пастка: якщо згодом ви підключите власний домен і вирішите переспрямовувати на нього адресу web.app, адреса на сторінці в магазині почне відповідати переспрямуванням. Або залиште на сторінці в магазині адресу, яка віддає файл напряму, або змініть її на новий домен.

Варіант 2: GitHub Pages або інший статичний хостинг

Підійде будь-який статичний хостинг, якщо файл опиниться в корені імені хоста, яке ви вказуєте.

На GitHub Pages ця деталь важлива: сайт проєкту розміщується за адресою username.github.io/repo/, але краулер перевіряє лише username.github.io/app-ads.txt. Файл має бути на сайті користувача — у репозиторії з назвою username.github.io, — або проєкту потрібен власний домен.

Та сама пастка з переспрямуванням діє й тут: щойно налаштовано власний домен, GitHub Pages переспрямовує на нього адресу github.io. Вказуйте ту адресу, яка віддає файл без проміжного кроку.

Варіант 3: розміщена сторінка відповідності вимогам

Якщо вам також потрібні політика конфіденційності, сторінка підтримки чи URL для видалення облікового запису — а застосункові з рекламою майже завжди потрібне перше, — той самий хост може віддавати їх усі. Саме це робить AppFoyer: кожен застосунок отримує власний піддомен, який віддає app-ads.txt як звичайний текст без переспрямування поруч зі сторінками, яких вимагають магазини. AdMob повідомляє “app-ads.txt file found and verified” (файл app-ads.txt знайдено й перевірено) для застосунків в обох магазинах, вебсайт розробника яких — адреса AppFoyer (перевірено в жовтні 2026 року). Власних результатів сканування від інших рекламних мереж у нас поки немає.

Перевірте раніше за краулера

curl -i https://your-host.example/app-ads.txt

Вам потрібні HTTP/2 200 (або HTTP/1.1 200 OK), content-type: text/plain, жодного заголовка location: і ваші рядки в тілі відповіді. 301 або 302 тут — найпоширеніший непомітний збій.

Потім зачекайте. AdMob пише: “it can take up to 24 hours for AdMob to crawl and verify your app-ads.txt files” (AdMob може знадобитися до 24 годин, щоб просканувати й перевірити ваші файли app-ads.txt). Статус шукайте в Apps → View all apps → app-ads.txt; якщо й через добу там написано, що файл не знайдено, посібник про «не знайдено» проходить причини по черзі.

Першоджерела