extend
вы начинаете использовать schema.search
, а не schema
?var res = extend(true, {}, used, schema); // на выходе получаем замену значения объектом, который стоит правее
Keep in mind that the target object will be modified, and will be returned from extend().
Целевой объект будет изменен и будет возвращен как результат extend()
var paths = {
"js": {
"ajax": {
"src": "./static/ajax/*.js",
"build": "build.js",
"dist": "./static/build"
},
"created": {
"src": "./static/created/*.js",
"build": "created.js",
"dist": "./static/build/created"
}
}
}
function doit(dir)
{
var item = paths.js[dir];
/* Листинг файлов
------------------------------------------------------------------------------------------------------------------------*/
gulp.task('lint', function() {
gulp.src(item.src)
.pipe(jshint())
.pipe(jshint.reporter('default'));
});
/* Конкатенация и минификация файлов
------------------------------------------------------------------------------------------------------------------------*/
gulp.task('minify', function(){
gulp.src(item.src)
.pipe(concat(item.build))
.pipe(gulp.dest(item.dist))
.pipe(rename({suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest(item.dist))
});
gulp.run('lint', 'minify');
}
gulp.task('make', function(){
for (var dir in paths.js)
{
doit( dir );
}
});
# Указываем расширения файлов, которые можно использовать в каталоге:
location ~* ^/static/plugins/.+\.(css|js|png)$ {
root /var/www/site.ru/;
}
# Следующий локейшен будет запрещать доступ в этот каталог для всех, не указанных ранее, расширений файлов
location ~* ^/static/plugins/ {
return 403;
}
pngquant --force --skip-if-large --speed 1 256 --output выход вход
jpegtran -copy none -optimize -progressive вход выход