Вопрос

здравствуйте, надеюсь выбрал тему верно, так вот ...

на хостинге установили node открыли порт 3000 порт прослушивается, при обращении lptf.it:3000 или http://185.53.160.215:3000/ выводится сообщение Hello Node.js Server!. Казалось бы все хорошо! но! я хочу дальше создание чата, и в корне сайта создаю файлик (сервер) с кодом (пример с интернета, я новичОк):

var express = require('express');
    var app = express();
    app.set('port', process.env.PORT || 3000);
    app.set('host', process.env.HOST || 'localhost');
    
    var logger = require('log4js').getLogger();
    var server = require('http').Server(app);
    var io = require('socket.io')(server);
    var port = 3000;


     app.use(express.static('/home/urlyogyj/public_html/views/chat.php'));
    app.get('/chat.php', function(req,res){
    res.sendFile('/home/urlyogyj/public_html/views/chat.php');
    });

    app.use('/fonts', express.static('/home/urlyogyj/node_modules/uikit/src/fonts/'));

     app.get('/socket.io.js', function(req,res){
    res.sendFile('/home/urlyogyj/node_modules/socket.io-client/dist/socket.io.js');
    });

    app.get('/jquery.js', function(req,res){
    res.sendFile('/home/urlyogyj/node_modules/jquery/dist/jquery.min.js');
     });

     app.get('/uikit.js', function(req,res){
    res.sendFile('/home/urlyogyj/node_modules/uikit/dist/js/uikit.min.js');
    });

    app.get('/uikit.css', function(req,res){
    res.sendFile('/home/urlyogyj/node_modules/uikit/dist/css/uikit.almost-flat.min.css');
    });

    app.get('/animate.css', function(req,res){
    res.sendFile('/home/urlyogyj/node_modules/animate.css/animate.min.css');
    });

    function usersCountToLog(){
    logger.info('User count: '+io.engine.clientsCount);
     }

     io.on('connection', function(socket){

    function setName(name){
        if(name != undefined && name != ''){
            socket.session = {};
            socket.session.userName = name;
            socket.session.address = socket.handshake.address; 
            socket.session.id = socket.id;          
            
            socket.broadcast.emit('newUser', socket.session);
            socket.emit('userName', socket.session);
            

            socket.emit('userList', io.length);

            logger.info('User '+socket.session.userName+' join from IP: '+socket.session.address);
            usersCountToLog();
            var clients = io.sockets.connected;


            var clientsList = {}
            for(var key in clients){
                if(clients[key].session)
                    clientsList[key] = clients[key].session;
            }
            
            socket.emit('clientsList', clientsList);
            console.log(clientsList);
        }
        else
            socket.emit('setName');
    }
    setName(null);
    socket.on('setName', function(name){
        if(name.length > 0)
            setName(name);
        else
            socket.emit('setName');
    });

    socket.on('message', function(msg){
        if(socket.session){
            if(socket.session.userName === null || socket.session.userName == '' || socket.session.userName == undefined){
                socket.emit('setName');
            }else{
                logger.trace('———--');
                logger.trace('User: ' + socket.session.userName + ' |  
    Message: ' + msg);
                logger.trace('====> Sending message to other chaters...');

                socket.broadcast.emit('messageFromClients', msg,  
    socket.session.userName);
                socket.emit('messageToClients', msg,      
    socket.session.userName);
            }
        }
    });

    socket.on('disconnect', function(){
        if(socket.session){
            io.sockets.emit('userDisconnected', socket.session);
            logger.info('User '+socket.session.userName+' left chat');
            usersCountToLog();
        }
    });
    });

    console.log('server started, tipa...');

как видно по коду прописал адреса к файлам, они верные, в консоле перезапускаю сервер командой

    node /home/urlyogyj/public_html/app.js screen


после этого обновляю адрес lptf.it:3000 и все равно без перемен, выводит Hello Node.js Server!
я не понимаю почему, и где и как можно отслеживать ошибки.
чего вообще хочу добиться:
до авторизации какого-либо пользователя чат не нужен, как только пользователь авторизовывается на сайте, открывается сокет и на сайте для всех остальных пользователей и гостей видна надпись что тот авторизованный пользователь в сети, и напротив его логина появляется кнопка создать чат, но только для авторизованых пользователей, при нажатии на нее открывается окошко чата, как на сайте вконтакте или фейсбуке, у получателя сообщения есть блок со списком все кто прислал ему сообщение, получатель нажимает на автора и пользователи начинают общение, каждый диалог с новым пользователь должен запускать свое окошко чата. причем этот чат существует на всех страницах сайта. после выхода пользователя через кнопку выход или закрытии вкладки сокет закрывается, а все сообщения записываются в базу данных!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

Нет ответов на вопрос

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: deekep
      Как запустить файл типа index.php на пк? 
    • Автор: pug1n
      Здравствуйте, помогите мне со вставкой переменной в herf. Вставляю ссылку на страницу пишет:
      Файл не найден
      Возможно, он был перемещён или удалён.
      В интернете очень мало информации по этому вопросу.
      Заранее спасибо!
      index7.html


    • Автор: мурамаса
      Добрый день, не знаю по теме ли вопрос с PHP include, но может кто нибудь знает и поможет.
      Сайты разрабатываю на локальном сервере. Суть в том что когда я применяю функции php include, почему то стили не работают, но не всегда, потому что до этого я делал тоже самое с другим файлом и все работало нормально.  Я просто понять не могу в чем вообще может быть проблема, браузер обновлял crtl+f5, чистил кэш.
      <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="/css/vsestyle.css"> </head> <body> <header> <div class="box"> </div> </header> <section> <div class="box"> <?php include"blocks/left-side-bar.php" ?> <?php include"blocks/right-side-bar.php" ?> </div> </section> <div class="box"> </div> </section> <section> <div class="box"> </div> </section> <section> <div class="box"> </div> </section> </body> </html> body { padding: 0; margin:0; } header { background: url(/img/vseback.png); height: 300px; } // СТИЛИ ЛЕВОГО БОКОВОГО МЕНЮ И БЛОКА .menu { float: left; } .menu li { list-style-type: none; padding: 10px; } .menu li a { text-decoration: none; } .left-side-bar { float: left; } // СТИЛИ ПРАВОГО БОКОВОГО БЛОКА .right-side-bar { float: right; font-size: 30px; } Так вот все стили применяются корректно, кроме последнего .right-side-bar. В том числе к include"blocks/left-side-bar.php" стили применились нормально, помогите)
      Кроме того, класс "menu", вложен в left-side-bar.php и на нем все стили отображаются нормально.

Карта разработчиков

Карта участников

Отметь себя на карте для поиска или предложения работы