Element-web: Не удалось подключиться к серверу интеграции Ошибка

Созданный на 27 февр. 2017  ·  41Комментарии  ·  Источник: vector-im/element-web

Описание

Во вновь созданной комнате в настройках указанной комнаты кнопка Manage Integrations неактивна. После ожидания ~ 60 секунд я получаю предупреждающее сообщение, в котором указано Could not connect to the integration server .

Действия по воспроизведению

  • Создать новую комнату
  • Нажмите на настройки для этой комнаты
  • Кнопка Manage Integrations неактивна
  • Подождите ~ 60 секунд, пока не появится сообщение об ошибке Could not connect to the integration server

Я ожидал, что смогу нажать кнопку Manage Integrations для настройки элементов интеграции.

screen shot 2017-02-27 at 8 44 54 am

Информация о версии

  • Платформа : Интернет (в браузере) И рабочий стол

Для веб-приложения:

  • Браузер : Chrome, последняя версия
  • ОС : OS X 10.12.4 бета
  • URL : riot.im/app

Для настольного приложения:

  • ОС : OS X 10.12.4 бета
  • Версия :
matrix-react-sdk version: 0.8.6
vector-web version: 0.9.7
olm version: 2.2.1
ambiguous bug p2 major scalar

Самый полезный комментарий

Ваш домашний сервер находится за обратным прокси? Если это так, еще одна вещь, которую следует проверить, это то, что ваш прокси-сервер сам использует HTTPS (порт 8448) с домашним сервером. Другими словами, если ваш брандмауэр / прокси-сервер обслуживает HTTPS в вашей глобальной сети, но внутренне использует HTTP для локальных / сетевых служб, попробуйте изменить его на HTTPS для синапса. Мои интеграции не работали, пока я не сделал этого, хотя сервер работал иначе.

Все 41 Комментарий

@DeviantEng, что это за домашний сервер? у вас установлены какие-либо плагины защиты конфиденциальности в Chrome?

Домашний сервер - это Synapse (https://github.com/matrix-org/synapse). В Chrome не установлены плагины, связанные с конфиденциальностью.

У меня такая же проблема. Я запускаю Synapse с помощью док-станции (https://hub.docker.com/r/silviof/docker-matrix/) в системе Ubuntu. При настройке учетной записи я использую ее в качестве домашнего сервера и по умолчанию (vector.im) в качестве «сервера идентификации». Я использую http://riot.im/app в качестве клиента.

Я звоню в riot.im из Chrome на указанном устройстве Ubuntu и из Safari на Mac. Когда я пробую его в Chrome на Mac, я также получаю сообщение «Запрос CORS отклонен».

Это происходит со мной, когда я запускаю свой собственный HS (Synapse) и использую свой собственный экземпляр Riot, в котором integrations_ui_url , integrations_rest_url и bug_report_endpoint_url установлены на пустые строки в надежде, что это будет сказал бы Riot, чтобы он даже не пытался связываться с какими-либо конечными точками интеграции / отчетов об ошибках.

Я также столкнулся с этим на собственном домашнем сервере synapse. Также с помощью браузера Chrome. Я открыл консоль разработчика и заметил, что он получает ответ 502 с сервера API интеграции с сообщением «пользователь не аутентифицирован» или аналогичным. Мой домашний сервер не был настроен на федерацию. Как только я настроил федерацию, ошибка исчезла, и я смог нажать кнопку «Управление интеграциями» и увидеть интеграции.

edit: обновлен с результатами тестирования.

@aperezdc Вы говорите о # 1698

Я была такая же проблема. Оказалось, что мне нужно установить номер порта на 8448. Не могу настроить номер порта, если вы хотите использовать интеграцию или приглашать внешних пользователей. Похоже, кто-то жестко закодировал номер порта.

@erobotics. Вот почему на моем экземпляре я не вижу превью URL, потому что Matrix обслуживается с: 443 на matrix.allmende.io, а Vector работает на: 443 на vector.allmende.io?

Как вы пришли к этому ответу простым методом проб, ошибок и предположений?

@almereyda Да, я думаю, что наличие задокументированных опций (согласно # 1698) могло бы помочь. Я пытался сказать, что отключение сервера интеграции должно скрыть сообщение о том, что Riot не может подключиться к нему. Это было сделано некоторое время назад в # 2606, и теперь можно оставить параметры пустыми, чтобы скрыть элементы пользовательского интерфейса, которые имеют дело с интеграциями.

Значит этот вопрос решен?

Новая проблема всегда может появиться, если в синапсе разрешена не жестко закодированная конечная точка интеграции, а пользовательский Riot построен с пользовательскими настройками, но что-то в их соединении не работает.

Вероятно, мы могли бы также помочь, открыв проблему в трекере ошибок synapse.

Смена порта на 8448 - не лучший вариант для меня. Может, какой-нибудь разработчик это поправит?

Я все еще вижу это на моем домашнем сервере в Riot-Web.

@dkasak то же самое здесь

@dkasak @ Zer0 - попробуйте перенаправить порт 8448 на IP вашего внутреннего синапс-сервера.

Он пересылается. Раньше я не упомянул, что федерация в целом работает, только интеграции не работают.

Ваш домашний сервер находится за обратным прокси? Если это так, еще одна вещь, которую следует проверить, это то, что ваш прокси-сервер сам использует HTTPS (порт 8448) с домашним сервером. Другими словами, если ваш брандмауэр / прокси-сервер обслуживает HTTPS в вашей глобальной сети, но внутренне использует HTTP для локальных / сетевых служб, попробуйте изменить его на HTTPS для синапса. Мои интеграции не работали, пока я не сделал этого, хотя сервер работал иначе.

@jogleasonjr По крайней мере, для меня это сработало.

Я вижу это сообщение в каждой комнате, где используются интеграции. Я использую свой собственный сервер Synapse и клиент Electron. За исключением пользовательских веб-интеграций, они также работают нормально. (Пользовательская интеграция веб-сайтов больше не выполняется.)

@jogleasonjr где мне установить этот конфиг?

@eledroos, который зависит от того, какой обратный прокси вы используете. То, что я написал, относится к прокси, а не к самому серверу. Я использую Squid в pfSense, поэтому в пользовательском интерфейсе конфигурации было достаточно просто указать Squid на http s : //192.168.1.101: 8448 .

Выделенные жирным шрифтом фрагменты являются важными. Если вы используете что-то вроде nginx, вы можете попробовать настроить его аналогичным образом.

@jogleasonjr аааа, это сработало. Я использую nginx , поэтому с ufw мне просто нужно было сделать: sudo ufw allow 8448

Предполагается ли, что интеграции будут работать с нефедеративным частным сервером, доступным в Интернете? Я также использую личный менеджер идентификации. Мне все еще непонятно.

Также сервер Synapse находится в частной сети с прокси-кешем для доступа в Интернет, возможно, ему нужны какие-то вещи, поэтому некоторые хуки проходят через этот прокси?
Переменные HTTP (S) _PROXY уже определены.

Я не смог заставить его работать с обратным прокси, даже используя https в качестве бэкэнда, как упоминал @jogleasonjr . Я использую порт 8448.

На следующей неделе я попробую перенаправить порт, чтобы посмотреть, поможет ли это.

Кстати, я не получаю такую ​​же ошибку, но около 500 «неавторизованных пользователей».

У меня та же проблема, я запускаю нефедеративный домашний сервер, использующий синапс, и, похоже, мне не удается заставить интеграции работать. Все перенаправлено на порт, и я не использую обратный прокси.
Я получаю эту ошибку как на рабочем столе, так и в веб-клиентах .. не знаю, что попробовать дальше
Проверка показывает, что 3 запроса POST к https://scalar.vector.im/api/register завершаются неудачно с возвращением кода состояния 500 (?): {"message":"Failed to authenticate user"}
Некоторая документация по этому поводу была бы очень признательна

Вам понадобится доступный слушатель федерации для вашего домашнего сервера, чтобы скаляр мог его достичь. Если вы хотите ограничить доступ к федерации, используйте обратный прокси (понимая опасность этого для федерации) и раскрывайте только конечную точку OpenID.

Спасибо, что указали мне правильное направление.
Моя проблема заключалась в том, что мне не удалось правильно настроить имя сервера в конфигурации синапса.

У меня такая же проблема, и мне может понадобиться помощь.

Я установил прослушиватель синапсов на порт 8448, который напрямую перенаправляется в моем брандмауэре, а также прослушиватель для порта 8008 с обратным проксированием. У меня также есть настройка DNS для matrix.mydomain.tld, которая указывает на сервер, и DNS SRV для _matrix._tcp установлен на 5 8448 matrix.mydomain.tld .

Запускаю riot через докер, от keachi/riot . Я установил DEFAULT_HS_URL на https://matrix.mydomain.tld и DEFAULT_IS_URL на https://matrix.org .

Однако Riot не может подключиться к серверу интеграции, который по умолчанию равен https://scalar.vector.im/ в этом образе докера.

Где ошибка?

@ turt2live Не могли бы вы

Это означает наличие действующей федерации с matrix.org. Это можно проверить с помощью тестера федерации или попытаться связаться с людьми на другом сервере, таком как matrix.org.

Для синапса это означает, что к одному из listeners в конфигурации прикреплен ресурс federation , примерно так:

listeners:
  - port: 8448
    tls: true
    type: http
    resources:
      - names: [federation]
        compress: false

Хм. У меня это есть в моем homeserver.yaml . Я использую nginx в качестве обратного прокси-сервера, и он перенаправляет _matrix на порт 8448. Я пробовал тестер федерации с URL-адресом моего хоста, но он просто зависает на несколько минут, пока не выдаст ошибку тайм-аута 524. Возможно, связано: когда я пытаюсь подключиться к порту 8448 через nc из-за пределов локальной сети, он также зависает. Не знаю, как отладить это дальше.

Это похоже на общую проблему с вашей установкой синапса. Я рекомендую посетить # synapse: matrix.org, чтобы

Для синапса это означает, что к одному из слушателей в конфигурации прикреплен ресурс федерации, примерно так:

К вашему сведению, в наши дни слушатель федерации не нужен строго, есть ресурс openid , поэтому замена federation на openid в этом комментарии позволит менеджеру интеграции без федерации.

Прошло время, @DeviantEng , решена ли ваша проблема? Если нет, можете ли вы подтвердить, установлена ​​ли у вас версия домашнего сервера и включена ли федерация и / или openid listener?

У меня такая же проблема. У меня есть Synapse за обратным прокси-сервером nginx. Нефедеративный. Слушатель на 8448. Открыл 8448 в ufw. Слушатель openid включен. v0.99.3

ЗАПИСЬ https://scalar.vector.im/api/register?v=1.1 500
rageshake.js: 107 Не удалось подключиться к серверу интеграции
rageshake.js: 107 Ошибка при инициализации scalarClient для ManageIntegsButton {statusCode: 500}

@jcrabapple Не могли бы вы отправить мне свой идентификатор матрицы в личку, я могу посмотреть журналы диспетчера скалярной интеграции? Мой mxid - <strong i="6">@jaywink</strong>:federator.dev - спасибо!

Я видел эту ошибку при поиске комнат на matrix.org, с клиентом Riot.im и с обратным прокси-сервером nginx на сервере. Я исправил, изменив конфигурацию прокси, чтобы использовать https 8448 вместо http 8008:

location /_matrix {
      proxy_pass https://127.0.0.1:8448;
      proxy_set_header X-Forwarded-For $remote_addr;
    }

У меня возникла та же проблема, что и у просматривая эти направления . Я был сбит с толку частью записи DNS SRV, поскольку мой домашний сервер находится на поддомене. Как только это было сделано с моим поставщиком DNS, тестер федерации показал все хорошо, и ошибка исчезла.

Поскольку этой проблеме 2 года, и последние комментарии, похоже, больше касаются настройки и маршрутизации Synapse, а не фактических проблем с самим сервером интеграции, и мы мало что можем сделать с этой информацией, чтобы исправить или улучшить ситуацию, Я закрою этот выпуск.

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

Я настраиваю домашний сервер через интрасеть, и у меня аналогичная ошибка. Я использую Nginx для обратного прокси. Пользователь может совершать одноразовые вызовы, но эта ошибка появляется, когда количество абонентов по вызову становится трех или более.
Могу ли я использовать matrix.org для федерации?
Если нет, нужен ли мне другой локальный сервер для федерации, то есть отдельный сервер, или есть способ заставить конференц-связь работать в нашей интрасети без федерации. заранее спасибо

@chized Похоже, ваша проблема openid (см. этот комментарий ).

Если это не ваша проблема, я бы предложил использовать федеративную учетную запись, например, на matrix.org, чтобы перейти в комнату администраторов Synapse https://matrix.to/#/ # synapse: matrix.org и попросить там поддержки.

@chized Похоже, ваша проблема openid (см. этот комментарий ).

Если это не ваша проблема, я бы предложил использовать федеративную учетную запись, например, на matrix.org, чтобы перейти в комнату администраторов Synapse https://matrix.to/#/ # synapse: matrix.org и попросить там поддержки.

Нет, я использую клиент Riot.

У меня такая же проблема. Я запускаю Synapse с помощью док-станции (https://hub.docker.com/r/silviof/docker-matrix/) в системе Ubuntu. При настройке учетной записи я использую ее в качестве домашнего сервера и по умолчанию (vector.im) в качестве «сервера идентификации». Я использую http://riot.im/app в качестве клиента.

Я звоню в riot.im из Chrome на указанном устройстве Ubuntu и из Safari на Mac. Когда я пробую его в Chrome на Mac, я также получаю сообщение «Запрос CORS отклонен».

Я также столкнулся с ошибкой CORS. Любое решение доступно?

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://scalar-staging.riot.im/scalar/api/register?v=1.1. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://scalar-staging.riot.im/scalar/api/register?v=1.1. (Reason: CORS request did not succeed).

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://scalar-staging.riot.im/scalar/api/register?v=1.1. (Reason: CORS request external redirect not allowed).

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://scalar-staging.riot.im/scalar/api/register?v=1.1. (Reason: CORS preflight response did not succeed).

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://scalar-staging.riot.im/scalar/api/register?v=1.1. (Reason: CORS request did not succeed).

Error: "CORS request rejected: https://scalar-staging.riot.im/scalar/api/register?v=1.1"
    u https://chat.recolic.org/riot/bundles/44ad918b2bd0a9925fd6/bundle.js:2
    onreadystatechange https://chat.recolic.org/riot/bundles/44ad918b2bd0a9925fd6/bundle.js:2
Была ли эта страница полезной?
5 / 5 - 1 рейтинги