2016-04-21 55 views
1

如果我有一個html文件並鏈接到位於同一文件夾或子文件夾中的css文件,運行gulp webserver時將包含css。Gulp-webserver:如果在html文件夾之外,鏈接到css不起作用?

但是,如果我有HTML文件夾外的CSS文件,它不會被包括在內。

因此,舉例來說,如果CSS是在同一文件夾,我可以這樣寫:

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

,它會工作。如果我把它放在父文件夾之外,並鏈接到它:

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

它不起作用。這是一個吞噬Web服務器的問題,還是我忽略了一些東西?我想有一個不同的地方,像這樣的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 
    })); 
}); 
+1

'root'是它可以去的最遠的背部:https://github.com/schickling/gulp-ebserver#usage。 – SteveLacy

回答

2

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')] 
    })); 
});