Javascript 在具有grunt的虚拟机上使用LiveReload时出错

Javascript 在具有grunt的虚拟机上使用LiveReload时出错,javascript,gruntjs,ubuntu-12.04,livereload,grunt-contrib-watch,Javascript,Gruntjs,Ubuntu 12.04,Livereload,Grunt Contrib Watch,我正在使用一个用vagrant/puphpet(ubuntu 12.04)设置的virtualbox。 我成功地安装了grunt和contrib watch。我安装了chrome扩展。。。此处指定的所有内容: 我的Grunfile如下所示: module.exports = function(grunt) { require('load-grunt-tasks')(grunt); grunt.initConfig({ compass: { // Task

我正在使用一个用vagrant/puphpet(ubuntu 12.04)设置的virtualbox。 我成功地安装了grunt和contrib watch。我安装了chrome扩展。。。此处指定的所有内容:

我的Grunfile如下所示:

module.exports = function(grunt)
{

require('load-grunt-tasks')(grunt);

grunt.initConfig({
  compass: {                  // Task
    dist: {                   // Target
      options: {              // Target options
        sassDir:        'sass',
        cssDir:         'css',
        environment:    'development',
        httpPath:       '/',
        imagesDir:      'img',
        relativeAssets:  true
      }
    }
  },
watch: {
    options: { livereload: true },
    sass: {
        files: ['sass/**/*.scss'],
        tasks: ['compass'],
        options: { spawn: false }
    }
}
});

grunt.registerTask('default', ['compass']);
}
我运行命令“grunt watch”,它会正确处理我的sass。但在Chrome的控制台中,我发现以下错误:

GET http://127.0.0.1:35729/livereload.js?ext=Chrome&extver=2.0.9
net::ERR_CONNECTION_REFUSED  injected.js:116
如果我在视图中手动添加脚本,仍然会出现错误:

GET http://localhost:35729/livereload.js net::ERR_CONNECTION_REFUSED 

你知道这个错误是从哪里来的吗?为什么不加载脚本?

你的Grunfile看起来不错

看起来您的虚拟机拒绝了连接。确保实时重新加载端口在iptables中打开

在Ubuntu中,这可以通过以下方式实现:


太神了这解决了我的问题。。。对于其他人,我应该提到,我使用puPHPet创建了我的virtualbox,我为我的机器定义了一个不同的IP(192.168.100.100)。。。所以不起作用,但是ttp://192.168.100.100:35729/livereload.js 多斯格拉德:我能帮忙吗。如果您使用的是Chrome,请查看名为Rearm的扩展。注意,它将我锁定在“流浪者”框之外,现在ssh超时,并且该框无法重新加载。
sudo apt-get install ufw
sudo ufw enable
sudo ufw allow 35729/tcp