javascript - gulp-livereload 与 vagrant 环境 : livereload. js 不可访问

标签 javascript vagrant puphpet gulp-livereload

我在 vagrant 环境(使用 puphpet 生成)中使用 gulp-livereload 时遇到问题。 我的计算机是 Windows 主机,VM 是 Debian。

我使用这个 gulpfile :

var gulp       = require('gulp'),
    less       = require('gulp-less')
    lr         = require('tiny-lr'),
    livereload = require('gulp-livereload'),
    server     = lr()
;

gulp.task('less', function () {
    gulp.src('assets/less/*.less')
        .pipe(less())
        .pipe(gulp.dest('build/css'))
        .pipe(livereload(server))
    ;
});

gulp.task('watch', function() {
    gulp.watch('assets/less/*.less', ['less']);
    livereload.listen(35729, function(err){
        if(err) return console.log(err);
    });
});

gulp.task('default', ['watch', 'less']);

当 Chrome 扩展程序添加神奇的 JS 文件时,我收到此消息:

Failed to load resource: net::ERR_CONNECTION_TIMED_OUT http://markup.dev:35729/livereload.js?ext=Chrome&extver=0.0.5

但是在我的虚拟机中,如果我运行下面的命令行,我就明白了

wget http://localhost:35729/livereload.js?ext=Chrome&extver=0.0.5

最佳答案

我没有足够的信息来确定,但我猜你的问题是你试图从主机访问页面,但没有转发 livereload 端口(虚拟机有自己的 IP 地址和vagrant 可以配置为将某些端口转发到主机,以便它们“看起来”是主机上的本地端口)。

尝试将以下行添加到您的 Vagrantfile:

config.vm.network "forwarded_port", guest: 35729, host: 35729

(有关文档,请参阅:https://docs.vagrantup.com/v2/networking/forwarded_ports.html)

或者,如果您直接访问 VM(也就是说,您将 markup.dev 映射到 guest 的 IP),则可能值得验证您的 VM 上没有配置防火墙,这可能会阻止来自外部访问的 livereload 端口。

关于javascript - gulp-livereload 与 vagrant 环境 : livereload. js 不可访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27015379/

相关文章:

javascript - SenchaTouch 2 : Same toolbar used across the views is firing the same event multiple times

nginx - 如何在从 PuPHPet 生成的配置文件中设置 Nginx 重写规则?

找不到 Vagrant 框错误

vagrant - PuPHPet - Vagrant 错误 : Evaluation Error and non-zero exit

javascript - 仅在带有 importmap 的 Rails 7 中将 Javascript 放置在一页中的位置

javascript - 为什么单击按钮后重新排序不起作用?

javascript - 如何添加 : "Cookies EU banner" to Rails 6 site

export - Vagrant 错误: NFS is reporting that your exports file is invalid

linux - 像生产服务器一样设置 Vagrant box

web - Vagrant 主机端口被忽略