javascript - GULP 显示 "ACCESS DENIED"

标签 javascript node.js gulp

我是 Gulp 令人难以置信的世界的新手。我创建了一个 gulpfile,它成功读取/写入/编译 sass/css/js/html 等。但是当我在 localhost:1337 上查看该网站时,我得到的只是“访问被拒绝”&加载localhost:1337/index.html

时“找不到文件”

下面是 gulp 文件(减去依赖项...)

任何有关此问题的帮助将不胜感激! :)

更新:我相信我缺少一些令人欣喜若狂的配置选项,以便在我导航到 localhost:1337/index.html 作为 localhost:1337/app/index.html & localhost:1337/时加载文件dist/index.html 在浏览器中加载正常。

// options
var config = {
    html_src:           "app/**/*.html",
    sass_src:           "app/assets/styles/main.scss",
    js_src:             "app/assets/scripts/**/*.js",
    css_dest:           "dist/assets/styles",
    js_dest:            "dist/assets/styles",
    js_concat_target:   "main.js",
    http_port:          "1337",
    livereload_port:    "35729"
};

// end config || begin tasks

gulp.task('styles', function() {
    gulp.src(config.sass_src)
        .pipe(sass({style:"expanded" }))
        .pipe(autoprefixer("last 2 version", "safari 5", "ie 8", "ie 9", "opera 12.1", "ios 6", "android 4"))
        .pipe(gulp.dest(config.css_dest))
        .pipe(rename({ suffix: ".min" }))
        .pipe(minifycss())
        .pipe(gulp.dest(config.css_dest))
        .pipe(livereload(server))
        //.pipe(notify({ message:"styles task complete" }));
});

gulp.task('scripts', function() {
    gulp.src(config.js_src)
        .pipe(jshint(/* ".jshintrc" */))
        .pipe(jshint.reporter('default'))
        .pipe(concat(config.js_concat_target))
        .pipe(gulp.dest(config.js_dest))
        .pipe(rename({ suffix: ".min" }))
        .pipe(uglify())
        .pipe(gulp.dest(config.js_dest))
        .pipe(livereload())
        //.pipe(notify({ message: "scripts task complete" }));
});

gulp.task('html', function() {
    gulp.src(config.html_src)
        .pipe(gulp.dest('dist/'))
        .pipe(livereload())
});

gulp.task('clean', function() {
    gulp.src([config.css_dest, config.js_dest], { read: false })
        .pipe(clean());
});

gulp.task('default', ['clean'], function() {
    server.listen(config.livereload_port);
    http.createServer(ecstatic({ root: __dirname} )).listen(config.http_port);
        gutil.log(gutil.colors.yellow('HTTP Server running on port ' + config.http_port));
    gulp.watch(config.sass_src, ['styles'])._watcher.on('all', livereload);
    gulp.watch(config.js_src, ['scripts'])._watcher.on('all', livereload);
    gulp.watch(config.html_src, ['html'])._watcher.on('all', livereload);
});

最佳答案

看起来您的服务器根目录设置为错误的目录。目前它设置为 __dirname ,这将是您的 gulpfile 所在的目录,但您的文件将输出到 dist 子目录。

要么尝试改变

http.createServer(ecstatic({root: __dirname})).listen(config.http_port);

http.createServer(ecstatic({root: 'dist'})).listen(config.http_port);

或访问您的index.html文件:localhost:1337/dist/index.html

关于javascript - GULP 显示 "ACCESS DENIED",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21614131/

相关文章:

javascript - 在nodejs for循环中插入语句?

node.js - Mocha MongoDB Mongoose ObjectId 引用在第一个 'it' 语句后消失

javascript - gulp services 命令后超时

javascript - 配置 Gulp 以反射(reflect) css 更改

javascript - 在 Angular 2/typescript 中声明 javascript 方法以避免属性 x 不存在错误

使用 eval 的 javascript 调试功能

ios - 来自 Amazon SNS 的 VoIP 推送

javascript - 使用 babel 和 browserify 进行 Gulp 任务 + 捕获错误

javascript - 点击通知时打开应用程序内的 url - Onesignal,Phonegap

javascript - 通过 WebScriptObject 从 Objective-C 调用 Javascript