Неизвестный тип контента в Happ

На ноутбуке вставили в Happ ссылку из письма, клиент мигнул и написал: неизвестный тип контента. Страница в браузере при этом открывается красиво, с кнопками и картинками. На fluxcfg.wiki как раз этот разъезд: Happ ждал список узлов, а получил обычную вёрстку сайта.

Клиент ждал фид, а получил страницу

Сообщение про неизвестный тип контента значит, что ответ по адресу не похож на подписку. Happ умеет разбирать список узлов, упакованную строку и отдельные URI. Обычная HTML-страница в этот набор не входит. Иконка замка в браузере ничего не меняет: страница может быть настоящей и всё равно не списком узлов.

Витрина, форма входа и короткая заглушка «страница не найдена» для человека выглядят понятно. Для клиента это чужой формат: не из чего собрать сервер, порт и ключ. Поэтому импорт обрывается ещё до Connect. Ни выбор строки, ни повтор кнопки этот формат не превратят в узлы.

Код 404 и этот текст — соседи, но не близнецы. При 404 пути нет. При неизвестном типе путь ответил, только телом оказалась страница, а не фид. Лечится тоже заменой адреса, но смотреть нужно на содержимое, не на статус. Запишите буквальную фразу с экрана, чтобы не смешать два отказа.

Примечание: не сохраняйте такую карточку «на потом». Пустая заготовка с битым адресом потом обновляется в ту же страницу и снова пугает тем же текстом, хотя рабочая ссылка уже лежит в боте. Удалите её до новой вставки, иначе легко обновить не ту.

Какие адреса маскируются под конфигурацию

Чаще всего в буфер попадает адрес сайта, куда человек зашёл «просто посмотреть». Адресная строка браузера после редиректа — уже не та строка, которую прислал бот. Happ честно качает витрину. Редирект мог сменить путь так, что от подписки не осталось и хвоста.

Вторая ловушка — ссылка на сообщение или на превью, а не на саму подписку. Открывается карточка чата или промежуточная страница. Типа контента у неё нет того, который ждёт клиент VPN. Превью умеет выглядеть как «ссылка работает», хотя внутри нет фида.

Третья — текст «вот конфиг» с адресом внутри предложения. Если скопировали абзац целиком, в запрос уезжают слова вокруг. Сервер не находит путь и может отдать страницу ошибки, которую Happ и называет неизвестным типом. Оставьте в буфере только сам адрес, без слов слева и справа.

Ручная строка vmess:// из чужого чата — отдельная история, её разбирает материал vmess из чата. Тип контента на карточке подписки почти всегда про адрес фида, а не про одну такую строку. Не лечите страницу подменой чужого ключа.

Страница с кнопками
это витрина, не список серверов
Адрес после редиректа
уже не строка из бота
Абзац с пояснением
в запрос попадают лишние слова
Одна строка из бота
её и нужно вставлять в Happ

Как выглядит живое тело подписки

Живая выдача Nasa VPN — одна строка, которую копируют в бот Nasa VPN после оплаты или короткого пробного срока. Её не «открывают почитать». Её вставляют в клиент как есть, не прогоняя через браузер.

VPN и браузер
Адрес из браузера часто оказывается страницей, а не фидом подписки.

У строки есть схема, хост и путь, без пробелов и без угловых скобок. Рядом не должно быть подписи «нажми сюда». Если сомневаетесь, сотрите буфер и скопируйте кнопкой бота ещё раз, а не из письма, где строка уже перенеслась.

Тариф, который эту строку выпускает, оформляют на страница оплаты. Пока оплаты или пробного срока нет, бот не выдаёт фид, и любая «похожая» ссылка с форума останется чужой страницей, которую клиент снова не разберёт.

Куда именно класть строку в Happ — в добавление подписки, не в поле одного ручного узла, если это адрес фида. Путаницу полей снимает разбор импорт от оператора. Адрес фида в поле одного узла как раз и выглядит как чужой формат.

Повторный импорт без HTML

Удалите карточку, на которой всплыл неизвестный тип. Оставьте в списке только ту, которую собираетесь проверить. Две записи с разными адресами легко обновить не ту, и ошибка останется на старой.

Скопируйте строку заново и добавьте подписку из буфера. Не проводите её через браузер «для проверки»: браузер как раз превращает путь в страницу, и обратно в буфер попадает уже адрес витрины, иногда даже с другим путём.

Дождитесь конца загрузки. Удачный исход — число узлов больше нуля и дата срока на карточке. Неизвестный тип при этом должен исчезнуть, а не смениться на долгий спиннер без единой строки сервера.

Если тот же текст вернулся, сравните вставленное с сообщением бота по последним символам. Совпадает хвост — значит, сам фид сейчас отдаёт не список. Не совпадает — в буфере всё ещё чужой адрес, и тело снова будет страницей.

Что скопировали Что приходит Что сделать
Адрес витрины Страница сайта Стереть и взять строку бота
Ссылка на чат Превью, не фид Не импортировать её
Абзац с пояснением Ошибка или HTML Оставить только адрес
Строка из бота Список узлов Отметить сервер

Если тип контента сменился на другой отказ

После чистой вставки 404 значит, что путь из бота уже погашен или обрезан. Это не повод вернуть витрину. Берите следующее сообщение бота, где хвост адреса другой, и не возвращайтесь к витрине.

Ноль серверов без фразы про тип контента значит, что тело разобралось, но узлов внутри нет. Тогда смотрят срок тарифа, а не «формат страницы». Формат уже принят, внутри просто не оказалось узлов.

Не ставьте модифицированный клиент из случайного архива, чтобы он «ел любой контент». Такой сборке всё равно нечего взять с витрины, а доверие к туннелю вы отдаёте неизвестно кому. Официальный клиент с живым фидом эту дыру не закрывает сборкой «сбоку».

Официальный Happ остаётся клиентом. Серверы по-прежнему приходят только из вашей подписки Nasa VPN. Страница, которая красиво открывается в браузере, сервером из-за этого не становится, сколько бы раз её ни вставили.

Свежий фид вместо угадывания формата

Когда непонятно, страница это или фид, не гадают по иконке. Открывают бот, копируют последнюю строку доступа и заменяют карточку целиком. Один чистый импорт короче серии догадок и не копит битые карточки.

Письма, скрины и «ссылка в шапке канала» для этого шага не годятся. Они как раз и приводят к странице. Источник строки — бот того аккаунта, на котором висит тариф, а не шапка чужого канала.

После появления узлов отметьте один и нажмите Connect уже с выбранной строкой. Иначе следом всплывёт другая фраза, про пустой выбор, и покажется, что тип контента «не вылечился», хотя список уже на месте.

Если бот не отдаёт строку, сначала статус тарифа на странице оплаты, потом повторный запрос в боте. Пока фида нет, Happ будет отказываться от любой чужой страницы тем же текстом. Свежая оплаченная строка из бота этот круг и обрывает.

  1. Удалить карточку, которая пишет про неизвестный тип контента, чтобы не обновить её снова
  2. Очистить буфер и скопировать одну непрерывную строку из последнего сообщения бота
  3. Добавить подписку из буфера и не прогонять адрес через строку браузера
  4. Проверить, что на карточке появились узлы и срок, а фраза про тип контента пропала
  5. Если снова пришла страница — сравнить хвост адреса с тем, что показал бот
  6. Отметить один сервер и подключиться уже к выбранному узлу, не к пустому выбору

← Все статьи