Tôi đang sử dụng Gulp và BrowserSync để phục vụ webapp của tôi tại localhost:9000
.
Thay vào đó, tôi có thể phục vụ webapp tại số localhost:9000/some/multi/level/path
như thế nào?Gulp + BrowserSync, phục vụ tại đường dẫn
Trả lời
Trong các tùy chọn trình duyệt của bạn, hãy chuyển đến startPath
để bắt đầu trên một URL khác '/'.
Điều này không thay đổi những gì máy chủ của bạn chỉ đang phục vụ đường dẫn mà BrowserSync sẽ bắt đầu.
+1 về điều này.
Đối với máy chủ thử nghiệm của tôi, tôi đang sử dụng ngụm-webserver:
gulp.src('./public')
.pipe(webserver({
host: 'localhost',
port: '8000',
path: '/myapp',
fallback: 'index.html'
directoryListing: false,
https: true
}))
Sau đó, tôi truy cập ứng dụng từ
https://localhost:8000/myapp/view
nhưng khi tôi sử dụng Browsersync cho chế độ dev tôi phải sử dụng
https://localhost:9000/view
Thật tuyệt khi có nó giống nhau, vậy có lẽ tôi sẽ ngừng sử dụng máy chủ gulp-webserver.
Máy chủ tĩnh của trình duyệt có thể được định cấu hình để phục vụ các trang từ bất kỳ đường phụ con tùy ý nào. Khi khởi tạo máy chủ tĩnh của trình duyệt, hãy thêm định nghĩa tuyến đường trong đó khóa là đoạn url để khớp và giá trị là thư mục được phân phối (đường dẫn phải tương đối với thư mục làm việc hiện tại).
Hãy thử một cái gì đó như thế này:
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': '.'
}
}
});
});
Chạy gulp watch
sẽ bắt đầu Browsersync và mở ra một trang với nội dung của ./
hiển thị ở url http://localhost:3000/some/multi/level/path
.
baseDir
phải được đặt thành chuỗi không trống và không cần phải là đường dẫn hợp lệ. Giá trị Falsey (null
, false
và chuỗi trống) sẽ không hoạt động.
Đoạn mã trên là một tệp gulpfile đang hoạt động và đã được kiểm tra chống lại Browsersync v2.18.5 và gulp v3.9.1. Đây là số complete gist.
Dường như tùy chọn không khả dụng. startPath
sẽ chỉ thay đổi URL nào được mở bởi trình duyệt đồng bộ hóa.
Cuối cùng tôi đã đưa ra một giải pháp đơn giản:
Chỉ cần tạo một liên kết tượng trưng từ some/multi/level/path
thư mục để your app files
. Sau đó, truy cập localhost:9000/some/multi/level/path
sẽ cung cấp cùng một tệp như truy cập localhost:9000
- 1. Gulp.js phục vụ tệp src KHÔNG CÓ browserSync?
- 2. URL proxy không hoạt động với nhiệm vụ BrowserSync Gulp
- 3. browserSync của modRewrite không hoạt động cho angularjs html5mode cho đường dẫn 'app/index.html' với gulp
- 4. Proxy BrowserSync trên máy chủ từ xa với Gulp?
- 5. Thay đổi đường dẫn phục vụ tệp tin tĩnh Socket.IO
- 6. Gulp Browsersync khiến nhiều lần tải lại với mỗi filechange
- 7. BrowserSync liên tục GET bằng cách sử dụng Express/Gulp
- 8. Khởi động máy chủ BrowserSync rất chậm với Gulp
- 9. Làm thế nào để phục vụ ứng dụng angular2 mà không browsersync
- 10. sbt Đường dẫn nhiệm vụ
- 11. Làm cách nào để nhận gulp + browsersync để làm việc với apache vhost?
- 12. Làm thế nào để chạy một máy chủ http phục vụ một đường dẫn cụ thể?
- 13. Không thể tìm thấy lỗi 'require-dir' của mô-đun trong khi chạy ứng dụng gulp: phục vụ đường ray
- 14. Làm thế nào để gỡ lỗi Javascript trong webstorm khi gulp đang phục vụ ứng dụng
- 15. Gulp: chạy nhiệm vụ không có điểm đến
- 16. Máy chủ ảo Apache: các đường dẫn khác nhau phục vụ ứng dụng khác nhau trên cùng một IP
- 17. Xử lý đường dẫn hình ảnh trong các tệp css khi được xử lý bởi gulp
- 18. cách kết thúc ng phục vụ hoặc firebase phục vụ
- 19. Phục vụ nhiều repos với hg phục vụ. Làm sao?
- 20. Lỗi Phục vụ Firebase
- 21. Làm cách nào để làm cho BrowserSync hoạt động với máy chủ proxy nginx?
- 22. Visual Studio tìm đường dẫn mã/đường dẫn thực hiện
- 23. Tại sao gulp bỏ thuốc lá mà không hoàn thành nhiệm vụ của tôi?
- 24. Nhận đường dẫn thư mục hiện tại
- 25. Đường dẫn tệp hiện tại trong webpack
- 26. Nguồn Gulp từ một tác vụ khác
- 27. Các tác vụ Browserify và Babel gulp
- 28. Tại sao IIS không phục vụ các trang aspx?
- 29. Nhiệm vụ gulp không thể tìm thấy karma.conf.js
- 30. Làm thế nào để đường ống đến một nhiệm vụ khác trong Gulp?
Cảm ơn, tôi đoán nó giải quyết được một nửa vấn đề. Một nửa còn lại là để BrowserSync phục vụ ứng dụng ở cùng một đường dẫn như startPath. –
@ MartinStålberg Bạn có bao giờ có thể giải quyết nửa sau của điều này không? –
@JonHarding, thật không may là tôi không thể giải quyết nó. –