Статическая директория и файл для проверки домена

Я настраиваю Stripe для своего плагина подписок. У него есть дополнительная функция для Apple Pay и методов оплаты Link. Мне нужно разместить файл верификации по адресу mydomain.com/.well-known/apple-developer-merchantid-domain-association.

Как можно предоставить статический файл в статической папке в Discourse? Я изучил различные варианты на форумах, но не смог найти подходящее решение для этого случая.

Если вы настроите постоянную ссылку, ведущую на сам файл (будь то загрузка или публикация в другом месте), пройдет ли это проверку?

Это должно находиться в указанном ими каталоге: /.well-known/

По нашему опыту работы с другими валидаторами, настройка перенаправления пермалинка с

/.well-known/apple-developer-merchantid-domain-association

на другое место, где размещён необходимый файл, срабатывала.

Я предлагаю сначала попробовать этот вариант, так как это простое решение.

Спасибо, Майкл, я попробую это и посмотрю, пройдёт ли проверка.

Перенаправление на страницу регистрации. Не удалось подтвердить право владения доменом yoursite.com. Запрос к адресу https://mysite.com/.well-known/apple-developer-merchantid-domain-association был перенаправлен на https://mysite.com/login.

Мой форум открыт для новых пользователей, но сначала они должны зарегистрироваться.

Чтобы проверка домена прошла успешно, вам нужно сделать сайт публичным. После подтверждения вы сможете снова включить требование входа в систему.

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

… как вы считаете, было бы хорошей идеей сделать исключение для постоянных ссылок под /.well-known/, чтобы они работали независимо от настройки login-required?

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

Спасибо вам обоим за советы. Я сделал сайт публичным и добавил постоянную ссылку, ведущую на файл, но, к сожалению, он должен находиться именно в этой директории: /.well-known/apple-developer-merchantid-domain-association.

Интересно, можно ли как-то извне создать пользовательскую структуру папок или файлов на сервере Discourse? Например, чтобы файл обслуживался по адресу var/www/html/.well-known/?

Да, это возможно.

У нас нет встроенного способа сделать это, но вы можете добавить статический путь в конфигурацию nginx.

Мне тоже пришлось решать эту проблему, и в итоге я написал документацию об одном из способов её решения здесь: Customising Discourse's web server behaviour using outlets