Ошибка смешанного содержимого на сервере чата ejabberd / XMPP - PullRequest
0 голосов
/ 26 августа 2018

Мой сайт защищен с помощью SSL, когда я пытаюсь позвонить XMPP Chat server показывает эту ошибку.

Смешанный контент: страница в https://localhost:44300/' была загружена через HTTPS, но запросил небезопасныйКонечная точка XMLHttpRequest 'http://192.168.30.1:5280/http-bind/'. Этот запрос был заблокирован;контент должен обслуживаться по HTTPS.

как добавить ssl на чат-сервер ejabberd / XMPP

pls Помогите мне новичок в этом

Ответы [ 2 ]

0 голосов
/ 27 августа 2018

Причина возникновения проблемы Смешанный контент не только потому, что вы не настроили ssl на своем сервере ejabberd.

На самом деле это говорит о другой проблеме:

  1. Ваш сайт работает и работает на HTTPS (https://localhost:44300/)
  2. На этой странице HTTPS вы пытаетесь получить доступ к незащищенному ресурсу. Под «небезопасным» я подразумеваю конечную точку HTTP вашего сервера ejabberd (http://192.168.30.1:5280/http-bind/')

Так вот почему вы видите эту проблему.

Как исправить?

Вам необходимо получить доступ к вашему серверу ejabberd по защищенной конечной точке (HTTPS), поэтому в коде вашего приложения JS должен быть указан этот URL https://192.168.30.1:5280/http-bind/.

Я не знаком с jsxc , но я нашел это руководство по началу работы https://github.com/jsxc/jsxc/wiki/Install-jsxc#2-configure поэтому ваш конфиг должен иметь HTTPS вместо HTTP, например:

  xmpp: {
     url: 'https://localhost:5280/http-bind/',

После этого ваша проблема Mixed Content должна быть решена.

Вероятно, после этого вы столкнетесь с другой проблемой, заключающейся в том, что вы не настроили SSL для своего сервера ejabberd, но это относится к конфигурации вашего сервера ejabberd, а не к вашему приложению JS.

0 голосов
/ 27 августа 2018

как добавить ssl на чат-сервер ejabberd / XMPP

Я думаю, вам нужна опция tls: true и опция certfile: ... Попробуйте что-то вроде этого:

listen:
  - 
    port: 5280
    module: ejabberd_http
    request_handlers:
      "/ws": ejabberd_http_ws
      "/bosh": mod_bosh
      "/api": mod_http_api
      "/presence": mod_webpresence
    web_admin: true
    tls: true
    certfile: "/etc/ejabberd/server.pem"
...