2015-05-21 5 views

ответ

2

В ваших браузерах параметры передаются в startPath, чтобы начать с другого URL-адреса, который '/'.

Это не повлияет на то, что ваш сервер обслуживает только путь, с которого начинается BrowserSync.

http://www.browsersync.io/docs/options/#option-startPath

+1

Спасибо, я думаю, это решает половину проблемы. Оставшаяся половина должна иметь BrowserSync для приложения на том же пути, что и startPath. –

+0

@ MartinStålberg Вы когда-нибудь могли решить вторую половину этого? –

+0

@ JonHarding, к сожалению, я не смог его решить. –

0

+1 на этом.

Для моего тестового сервера я использую Глоток-веб-сервер:

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

Затем я получить доступ к приложению из

https://localhost:8000/myapp/view

, но когда я использую Browsersync для режима Dev я должен использовать

https://localhost:9000/view

Было бы очень приятно, если бы это было то же самое, тогда, возможно, я прекратил бы использовать gulp-webserver.

2

Статический сервер Browsersync может быть настроен для обслуживания страниц любого произвольного подпути. При инициализации статического сервера Browsersync добавьте определение маршрута, где ключ является фрагментом url для соответствия, а значение - это каталог, который должен быть обслуживаться (путь должен быть относительно текущего рабочего каталога).

попробовать что-то вроде этого:

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

Запуск gulp watch начнет Browsersync и открыть страницу с содержимым ./ отображенных в URL http://localhost:3000/some/multi/level/path.

baseDir должен быть установлен в непустую строку и не должен быть допустимым путем. Значения Falsey (null, false и пустые строки) не будут работать.

Фрагмент выше - рабочий файл gulpfile и был протестирован против Browsersync v2.18.5 и gulp v3.9.1. Вот complete gist.

1

Эта опция недоступна. startPath изменит только тот URL, который открывается браузером.

Я наконец придумал простое решение:

Просто создайте символическую ссылку из каталога some/multi/level/path в your app files. Затем, перейдя на localhost:9000/some/multi/level/path, вы получите те же файлы, что и на localhost:9000

Смежные вопросы