Включение пользовательского интерфейса Browsersync в nginx
Я использую Vagrant VM, чтобы воспроизвести мой рабочий сервер для локальной веб-разработки.
Хост-машина работает под управлением Windows 10, а гость запускает Nginx 1.10 в Ubuntu 14.04 с VirtualBox в качестве поставщика.
Я хочу обслуживать файлы во время разработки с использованием Gulp и Browsersync. Вот моя конфигурация browsersync из задачи gulp serve:
browserSync.init({
ui: {
port: 3001
},
open: false,
port: 3000,
server: {
baseDir: ['.tmp', 'app'],
routes: {
"/bower_components": "bower_components"
}
}
});
Мне удалось заставить его работать с этим:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
server_name test.local.dev;
location / {
proxy_pass http://localhost:3000/;
}
location /ui/ {
proxy_pass http://localhost:3001/;
}
# BrowserSync websocket
location /browser-sync/socket.io/ {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
Конфигурация сокета, как показано здесь: Как заставить BrowserSync работать с прокси-сервером nginx?
Сайт, перезагрузки и браузерная синхронизация работает отлично. Но пользовательский интерфейс не может найти необходимые файлы.
GET http://test.local.dev/js/vendor/socket.js
GET http://test.local.dev/js/app.min.js
GET http://test.local.dev/js/pages-config.js
GET http://test.local.dev/lib/client-js.js
GET http://test.local.dev/js/vendor/socket.js
GET http://test.local.dev/js/app.min.js
GET http://test.local.dev/js/pages-config.js
GET http://test.local.dev/lib/client-js.js 404 (Not Found)
Как я могу настроить маршруты для этих запросов в конфигурации Browsersync? Если это невозможно, есть ли способ заставить это работать?