Хорошо, поэтому у меня был сервер socket.io, прослушивающий другой порт, но чтобы заставить его работать с https, мне нужно было его слушать без передача в порт (по умолчанию). (Он отлично работает на другом порту, загруженном с http, но мне нужно, чтобы он работал на https)socket.io.js 404 (с использованием apache на сайт хоста)
Мой проект работал нормально, клиент мог подключать и отправлять данные в порядке. Однако я переместил сайт в свой основной домен, у которого есть сертификат SSL. Сайт загружает все через https, поэтому он не смог загрузить http-версию socket.io.js
Однако теперь, когда я переключил его только на var client = require("socket.io").listen().sockets;
вместо того, чтобы слушать другой порт, он все еще не работает. Вместо того, чтобы давать мне ошибку подключения, он не включает файл вообще.
Я боюсь, что мне придется переделать весь сайт, чтобы разместить мои файлы через node.js, и я бы предпочел не делать этого.
Я не использую какой-либо другой модуль, кроме mysql-node
и socket.io
, и я предпочел бы сохранить его таким образом, если это возможно. Я новичок в node.js, поэтому я сожалею, если есть очевидный ответ, о котором я не знаю.
Я, однако, оглянулся и не мог найти ответ нигде. Или, по крайней мере, ясный ответ.
Могу ли я использовать websockets
вместо socket.io
? Если да, то как мне это сделать? Честно говоря, я был бы более готов переделать приложение-узел вместо того, чтобы переделывать мой сайт.
Я включая socket.io.js файл в стороне клиента, так как:
<script src="https://mysite/socket-io/socket.io.js"></script>
, но, конечно, 404, так как это не сам файл, который находится на моем сервере апача. Там нет папки/каталога с именем socket-io
в моем каталоге public_html
, так что это имеет смысл для меня.
Но как я могу заставить это работать? Нужно ли мне размещать файлы через node.js, или мне лучше использовать веб-узлы HTML5? Достаточно большая демография пользователей моего сайта использует мобильные устройства, поэтому я должен быть уверен, что он работает и на мобильных устройствах.
Почему вы используете два отдельных веб-сервера (Apache и node.js), чтобы создать свой сайт? Как у вас это установлено в архитектуре? Вы пытаетесь обслуживать файл socket.io.js с сервера Apache или с сервером node.js? – jfriend00