Gulp网络服务器:如果在html文件夹之外,到css的链接不起作用?

ffx8fchx  于 2022-12-08  发布在  Gulp
关注(0)|答案(2)|浏览(120)

如果我有一个html文件,并且链接到同一个文件夹或子文件夹中的css文件,那么在运行gulp webserver时会包含css。
但是如果css文件在html-folder之外,它就不会被包含在内。
例如,如果css在同一个文件夹中,我可以写:

<link rel="stylesheet" href="style.css">

如果我把它放在外面的父文件夹中,并链接到它:

<link rel="stylesheet" href="../style.css">

它不工作。这是一个问题与gulp webserver或我忽略了什么?我想有css在不同的地方,像这样:

<link rel="stylesheet" href="../../builds/development/postcss/css/style.css">

在浏览器中,它显示“加载资源失败”。
以下是Web服务器任务:

gulp.task('webserver', function() {
    gulp.src(htmlFolder)
    .pipe(webserver({
        livereload: true,
        open: true
    }));
});
1cosmwyk

1cosmwyk1#

src是服务器的根目录,由于安全问题,您无法访问其父目录。
gulp-webserver确实支持中间件,例如serve-static

var serveStatic = require('serve-static');

gulp.task('webserver', function() {
    gulp.src(htmlFolder)
    .pipe(webserver({
        livereload: true,
        open: true,
        middleware: [serveStatic(__dirname + '/builds')]
    }));
});
nkhmeac6

nkhmeac62#

我认为现在更好的方法是使用“browserSync”。

function do_browserSync(done) {
    browserSync({
        server: {
            baseDir: '.'
        },
        startPath: 'debug/index.html',
        port: 8000,
        open: true,
        notify: false
    });
    done();
};

相关问题