tutorial notification debug browsersync gulp browser-sync

notification - Gulp+BrowserSync, servir en el camino



gulp sass (4)

+1 en esto.

Para mi servidor de prueba, estoy usando gulp-webserver:

gulp.src(''./public'') .pipe(webserver({ host: ''localhost'', port: ''8000'', path: ''/myapp'', fallback: ''index.html'' directoryListing: false, https: true }))

Luego accedo a la aplicación desde

https://localhost:8000/myapp/view

pero cuando uso Browsersync para el modo dev tengo que usar

https://localhost:9000/view

Sería realmente bueno que fuera igual, entonces quizás dejaría de usar gulp-webserver.

Estoy usando Gulp y BrowserSync para servir mi aplicación web en localhost:9000 .
¿Cómo puedo servir la aplicación web en localhost:9000/some/multi/level/path lugar?


El servidor estático de Browsersync se puede configurar para servir páginas desde cualquier subruta arbitraria. Al inicializar el servidor estático de Browsersync, agregue una definición de ruta donde la clave es el fragmento de URL para que coincida y el valor sea el directorio a ser servido (la ruta debe ser relativa al directorio de trabajo actual).

Pruebe algo como esto:

var gulp = require(''gulp''); var browsersync = require(''browser-sync'').create(); gulp.task(''watch'', function() { browsersync.init({ files: ''./*.html'', startPath: ''/some/multi/level/path'', server: { baseDir: ''-'', routes: { ''/some/multi/level/path'': ''.'' } } }); });

La ejecución de gulp watch iniciará Browsersync y abrirá una página con los contenidos de ./ muestran en la URL http://localhost:3000/some/multi/level/path .

baseDir debe establecerse en una cadena no vacía y no necesita ser una ruta válida. Los valores de Falsey (cadenas null , false y vacías) no funcionarán.

El fragmento de arriba es un gulpfile que funciona y fue probado contra Browsersync v2.18.5 y gulp v3.9.1. Aquí está la esencia completa .



Parece que la opción no está disponible. startPath solo cambiará la URL que startPath abre.

Finalmente se me ocurrió una solución simple:

Simplemente cree un enlace simbólico desde el directorio some/multi/level/path a your app files . Luego ir a localhost:9000/some/multi/level/path proporcionará los mismos archivos que ir a localhost:9000