Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   Как совместить Node.js и PHP (https://javascript.ru/forum/node-js-io-js/70742-kak-sovmestit-node-js-i-php.html)

Vlad213 29.09.2017 09:53

Как совместить Node.js и PHP
 
Например я хочу сделать сайт на php, но некоторые элементы, вроде чата реализовать на node.js, как мне это сделать?

Vlasenko Fedor 29.09.2017 13:03

чат на ноде это отстой
используйте стабильные решения
к примеру xmpp (openfire...)

Rasy 29.09.2017 13:10

Цитата:

Сообщение от Poznakomlus
чат на ноде это отстой

в чем его изъяны?

Vlasenko Fedor 29.09.2017 13:21

доставка
маштабируемость
есть объезженные решения, написал выше
к примеру вы видео хотите(свой скайп, webrtc, peer to peer )
в openfire вс е в коробке есть с плагинами
пробить нат, stun имногое другое
да забыл xmpp.js

Audaxviator 29.09.2017 19:19

Цитата:

Сообщение от Poznakomlus (Сообщение 465981)
к примеру вы видео хотите(свой скайп, webrtc, peer to peer )

Гы, я только что сделал для пробы "конференцию" (20 peer-to-perr) на WebRTC.
Во-первых, на socket.io, конечно.
А во-вторых, там от серверной стороны-то ничего не зависит.

Audaxviator 29.09.2017 19:34

Я так думаю, что ничего и связывать-то особо не нужно.
Поставить Ноду и socket.io
Сокету сказать слушать любой порт (от фонаря, типа - 3001)
Статическую страницу с клиентским кодом socket.io отдать в iframe, а аргумент подключения что-то типа
'http://domen.ru/socketio:3001/'

Как-нибудь так я попробовал бы замутить. Только URL на эту страницу нужно будет, наверное, ЭнДжинЭксом направить.

Vlasenko Fedor 29.09.2017 19:42

Цитата:

Сообщение от Audaxviator
А во-вторых, там от серверной стороны-то ничего не зависит.

ага и как мы клиентов объединим за nat
если у клиента отвалится интернет, что будет гарантировать доставку сообщения при коннекте
ай добавьте видеочат :lol:

Audaxviator 29.09.2017 19:46

Я ж напейсал - "сделал". Оно работает. Я знаю, как клиенты стыкуются.

Audaxviator 29.09.2017 21:31

Ну короче, я попробовал (это ж всё равно у меня хобби), всё так и работает.
Причём, ему совершенно всё равно - об чём я и догадывался - откуда запрос. Я запустил слушающий порт 3001 socket.io на виртуальной машине, которая доступна в локальной сети - 192.168.1.100
И прямо на рабочем столе положил файл asdf.html с iframe. А этот iframe запрашивает файл в папке тут же src="./sock/zxcv.html", в котором ссылка на клиентский socket.io.js и скрипт:
var socket = io.connect('http://192.168.1.100:3001');
socket.emit('au', '!!!!!!!!!!!!');
И всё: тупо два раза кликнул на asdf.html, он открылся в браузере, iframe в нём законнектился с VM, отправил эти восклицательные знаки, а сервер их принял.
Node.js - это прелесть!


Часовой пояс GMT +3, время: 06:10.