Можете ли вы просто запустить ту же команду снова, но на этот раз:
./launcher enter app
rails c
TopicEmbed.find_by(topic_id: 157441).embed_url
Если то, что вы поделились, действительно является значением embed_url в вашей базе данных, то это и есть проблема, и я сделаю небольшой PR в discourse/discourse, чтобы обрабатывать такие крайние случаи, когда embed_url оказался в некорректном состоянии.
Насчёт этих обратных кавычек в начале и в конце URL, я думаю, это была просто ошибка при попытке отформатировать текст здесь в теме, используя кнопку кода.
Таким образом, вся проблема здесь в том, что указанный выше PR начал удалять хвостовые слэши из TopicEmbed в январе этого года? Я чувствую себя раздвоенным из-за этого изменения. Честно говоря, я бы предпочёл, чтобы мы уважали то, что администратор отправляет нам.
Действительно, перенаправления не выполняются. Форум работает на том же сервере / в том же IP-пространстве, что и блог? Возможно, это активирует нашу защиту от SSRF.
Если это так, вам нужно разрешить это через настройку allowed_internal_hosts
Причина, по которой мы внесли это изменение, заключается в том, что существовала несогласованность между тем, как работают встраивания WP Discourse и встраивания через JavaScript. Встраивания через JavaScript всегда нормализовывали URL. Встраивания WP Discourse приходили другим путём и не нормализовывали URL (до тех пор, пока мы не внесли это изменение). Это приводило к другим несогласованностям.
Ещё одна проблема заключается в том, что при выполнении запроса curl к API для поиска ID темы по встраиваемому URL я не могу его найти из-за завершающего слеша. Discourse возвращает страницу 404.
Однако, если убрать завершающий слеш, возвращается значение:
Чтобы это работало, мне пришлось бы выполнить замену строки в WordPress для удаления завершающего слеша из постоянной ссылки перед проверкой. Но это не имеет смысла, поскольку канонический URL содержит завершающий слеш…
На практике Discourse нормализует постоянную ссылку до URL, которого не существует… нормализованная версия должна быть именно с завершающим слешем.
Но я всё ещё обеспокоен URL-адресами без завершающего слэша по причинам, указанным в моём предыдущем посте. Стоит ли мне открыть новую тему по этому вопросу, @angus?
Конечно! Это не повлияет на функцию «Полный пост», так как мы теперь можем обрабатывать перенаправления на сайтах в том же домене, что и форум, но вы можете продолжить обсуждение других вопросов в новой теме.