NodeJS在现有的php本地站点上

时间:2016-11-01 19:56:24

标签: php node.js apache

我有一个基于PHP / Apache的站点构建,我想在div区域中插入一个NodeJs应用程序,我已经将它显示在iframe中,如下所示:

<iframe src="http://example.com:8080"></iframe>

我试过了ProxyPass&amp; ProxyPassReverse与下面的代码,但它只重定向到我的nodeJs应用程序没有我的PHP站点在apache配置文件 /etc/apache2/sites-available/exemple.conf

ProxyRequests off

<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>

<Location />
  ProxyPass http://localhost:8080/
  ProxyPassReverse http://localhost:8080/
</Location> 

我如何才能正确实现这一目标。

1 个答案:

答案 0 :(得分:0)

最后不需要特定的服务器配置,从客户端对服务器url +端口进行ajax调用就可以了。

=&GT; server.js文件&lt; =

// Use of socket.IO
var io = require('socket.io')(8080);
// Establishes server connection
io.on('connection', function(socket){
//send data to client ( real time date exemple )
  setInterval(function(){
    io.emit('date', {'date': new Date()});
  }, 100);
});

=&GT;使用css #date ID&lt; =

在网站上的任何位置编写脚本
jQuery(document).ready(function(){
  // Get base path
  var base_url = window.location.origin;
  // Establishes client connection to server
  jQuery.ajax({
    url : base_url + ':8080/socket.io/socket.io.js', // Socket.IO init on port (8080)
    dataType : 'script', // Turn POSTs into GETs for remote-domain requests with 'script' type
    success : function(){
      // Connection to the server
      var socket = io(base_url + ':8080');
      // Get message defined server side
      socket.on('date', function(data){
        // Print msg into html
        jQuery('#date').text(data.date);
      });
    }
  });
});