转发咕噜连接到不同的URL(forwarding grunt connect to differen

2019-10-21 05:51发布

我使用的咕噜与livereload对我的开发环境连接。

我希望能够调用API的生产是在/服务器。

要做到这一点我需要直接从任何电话

http://localhost:9000/server

http://www.production-server.com/server

因为有时我想测试生产服务器上时,在开发模式这是为我好。

这里是我当前的连接配置(通过文书上士生成):

 connect: { options: { port: 9000, // Change this to '0.0.0.0' to access the server from outside. hostname: 'localhost', livereload: 35729 }, livereload: { options: { open: true, middleware: function(connect, options, middlewares) { return [ connect.static('.tmp'), connect().use( '/bower_components', connect.static('./bower_components') ), connect.static(appConfig.app) ]; } } }, test: { options: { port: 9001, middleware: function(connect) { return [ connect.static('.tmp'), connect.static('test'), connect().use( '/bower_components', connect.static('./bower_components') ), connect.static(appConfig.app) ]; } } }, dist: { options: { open: true, base: '<%= yeoman.dist %>' } } }, 

Answer 1:

我发现的问题和解决方案:

首先要做的是使用:咕噜-CONNECT代理咕噜任务可以做代理(你可以做任何事情真的存在)。 配置不是很明显,但你可以找到所有的信息(例如和)在这里: https://www.npmjs.org/package/grunt-connect-proxy

我的具体的问题,是因为我的服务器不接受不是来自同一个域中的任何电话,所以我所做的就是要添加属性“头”与我的域名的配置。 这是新的配置应该怎么样子:

    connect: {
        options: {
            port: 9000,
            // Change this to '0.0.0.0' to access the server from outside.
            hostname: 'localhost',
            livereload: 35729
        },
        server: {
            proxies: [
                {
                    context: '/server',
                    host: 'production-server.com',
                    post: 80,
                    changeOrigin: true,
                    headers: {
                        host: 'simple-layout.com'
                    }
                }
            ]
        },
        livereload: {
            options: {
                open: true,
                middleware: function (connect) {
                    return [
                        proxySnippet,
                        connect.static('.tmp'),
                        connect().use(
                            '/bower_components',
                            connect.static('./bower_components')
                        ),
                        connect.static(appConfig.app)
                    ];
                }
            }
        },
        test: {
            options: {
                port: 9001,
                middleware: function (connect) {
                    return [
                        connect.static('.tmp'),
                        connect.static('test'),
                        connect().use(
                            '/bower_components',
                            connect.static('./bower_components')
                        ),
                        connect.static(appConfig.app)
                    ];
                }
            }
        },
        dist: {
            options: {
                open: true,
                base: '<%= yeoman.dist %>'
            }
        }
    },


文章来源: forwarding grunt connect to different url