我一直在和Grunt建立一个代理。我可以连接到我的Grunt服务器,但当我尝试访问代理时,我得到了404。这是我的Gruntfile.js
"use strict";
module.exports = function(grunt) {
var proxySnippet = require('grunt-connect-proxy/lib/utils').proxyRequest;
require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);
grunt.initConfig({
connect:{
development: {
port: 9000,
base: 'app',
keepalive: true,
livereload: {
options: {
middleware: function() {
return proxySnippet;
}
}
},
proxies: [{
context: '/name',
host: 'http://99.42.222.76:3000/users.json',
changeOrigin: true
}]
}
}
});
grunt.registerTask('server', ['configureProxies', 'connect']);
};我试着用this博客帮我设置所有的东西,但我仍然没有任何运气。提前谢谢。
发布于 2014-04-29 04:45:19
至少部分原因是您不想在代理配置的host中使用完整的URL。根据文档(https://github.com/drewzboto/grunt-connect-proxy),主机不应包含http。
引用:
options.host
类型:字符串
要代理到的主机。不应从http/https协议开始。
我认为你想要的proxies部分应该如下所示。主机表示要代理到的IP地址或主机名,端口表示要代理到的端口,重写表示从/name到/users.json的转换。
proxies: [{
context: '/name',
host: '99.42.222.76',
port: 3000',
changeOrigin: true,
rewrite: { '^/name': '/users.json' }
}]https://stackoverflow.com/questions/19931649
复制相似问题