我想访问本地 http://localhost:8080/xxxx 指向 http://xingke.iask.in/xxx 这样就不存在跨域问题了。
但是我设置apache代理的时候 没设置对。访问还是指向的本地
apache vohosts
<VirtualHost *:80>
ServerAdmin wx@qq.com
DocumentRoot "D:/Develop/WWW/Online/Hphp/Public"
ServerName xingke.iask.in
ServerAlias xingke.iask.in
#代理
ProxyPass / http://xingke.iask.in/
ProxyPassReverse / http://xingke.iask.in
<proxy http://xingke.iask.in>
AllowOverride None
Order Deny,Allow
Allow from all
</proxy>
ErrorLog "logs/dummy-host2.xingke.iask.in-error.log"
CustomLog "logs/dummy-host2.xingke.iask.in-access.log" common
</VirtualHost>
本地请求地址:http://xingke.iask.in/home/in...
然后报以下错误
这里报500错误了,服务也不能访问了 应该怎么设置呢!!!
为情所困2017-05-16 16:59:16
本地请求不应该是 localhost 吗?Apache 的 proxy 是不是返回 30x 跳转了,如果是,结果还是跨域请求,如果用 nginx 设置代理,不会返回 30x 跳转。
建议可以考虑使用 nginx 设置代理,可参考:
https://zhuanlan.zhihu.com/p/...
漂亮男人2017-05-16 16:59:16
提供给你参考,下面是我在dev开发的适合设置的代理,基于vue-cli,在config目录的index.js
// see http://vuejs-templates.github.io/webpack for documentation.
var path = require('path')
module.exports = {
build: {
env: require('./prod.env'),
index: path.resolve(__dirname, '../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '/',
productionSourceMap: true,
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css']
},
dev: {
env: require('./dev.env'),
port: 8080,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
proxyTable: {
//login-controller begin
'/OSSCallbackServer': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/forbidden': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/getPolicy': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/login': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/logout': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/read/current': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/regin': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/unauthorized': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//scheduled-controller
'/scheduled/close/task': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/del/task': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/open/task': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/read/log': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/read/tasks': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/run/task': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/scheduled/update/task': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//权限管理接口
'/cache/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/update/menu': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/update/menu': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/update/role': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//部门管理接口
'/dept/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dept/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dept/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dept/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dept/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//字典管理
'/dic/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dic/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dic/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dic/read/key': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dic/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dic/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dicIndex/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dicIndex/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dicIndex/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dicIndex/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/dicIndex/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//菜单管理
'/menu/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/menu/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/menu/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/menu/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/menu/read/permission': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/menu/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//系统参数管理
'/param/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/param/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/param/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/param/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/param/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//角色管理
'/role/add': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/read/permission': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/role/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//会话管理
'/session/delete': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/session/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//用户管理
'/user/read/current': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/read/detail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/read/list': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/update': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/user/update/password': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//第三方登录接口
'/callback/qq': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/callback/sina': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/callback/wx': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/sns': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/sns_bind': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/sns_fail': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/sns_success': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
//文件上传接口
'/upload/image': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
},
'/upload/imageData': {
target: 'http://172.16.0.98:8087',
changeOrigin: true
}
},
// CSS Sourcemaps off by default because relative paths are "buggy"
// with this option, according to the CSS-Loader README
// (https://github.com/webpack/css-loader#sourcemaps)
// In our experience, they generally work as expected,
// just be aware of this issue when enabling this option.
cssSourceMap: false
}
}