使用Gulp的远程服务器上的BrowserSync代理?

时间:2016-06-21 05:42:58

标签: nginx proxy gulp browser-sync

我有一个远程Linux服务器,我正在运行Node.js应用程序,通过http://www.example.com的nginx代理。

我使用BrowserSync安装了gulp(用于SASS编译)。每当我在服务器上启动gulp时,访问URL都是这样的:

[BS] Access URLs:
 ----------------------------------
       Local: http://localhost:3000
    External: http://10.0.2.15:3000
 ----------------------------------
          UI: http://localhost:3001
 UI External: http://10.0.2.15:3001
 ----------------------------------

所以,这不会起作用,因为我没有尝试通过localhost访问服务器。我需要访问它的实际网址:http://www.example.com。当我浏览http://www.example.com时,我可以在页面中看到BrowserSync未被注入页面。

我一直在搞乱BrowserSync代理选项,但它们并不清楚。我在gulp任务中尝试了以下内容:

browserSync.init({
  proxy: {
    target: 'http://www.example.com:4000'
  }
});

然后我明白了:

[BS] Proxying: http://www.example.dev:4000
[BS] Access URLs:
 ----------------------------------
       Local: http://localhost:3000
    External: http://10.0.2.15:3000
 ----------------------------------
          UI: http://localhost:3001
 UI External: http://10.0.2.15:3001
 ----------------------------------

但是端口4000在防火墙上没有打开,因此无法正常工作。这是正确的方法,我只需要打开那个端口吗?为什么它不适用于端口80?或者我离开了吗?

1 个答案:

答案 0 :(得分:0)

试试这个发电机:

https://www.npmjs.com/package/generator-angular-proxy

它完全符合您的要求......