首頁  >  問答  >  主體

vue.js - vue apache 代理設定

我想訪問本地 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錯誤了,服務也不能訪問了 該怎麼設定呢! ! !

淡淡烟草味淡淡烟草味2712 天前502

全部回覆(3)我來回復

  • 为情所困

    为情所困2017-05-16 16:59:16

    本地請求不應該是 localhost 嗎? Apache 的 proxy 是不是回傳 30x 跳轉了,如果是,結果還是跨域請求,如果用 nginx 設定代理,不會回傳 30x 跳轉。

    建議可以考慮使用 nginx 設定代理,可參考:

    https://zhuanlan.zhihu.com/p/...

    回覆
    0
  • 漂亮男人

    漂亮男人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
      }
    }
    

    回覆
    0
  • 高洛峰

    高洛峰2017-05-16 16:59:16

    cors跨域,順便要配置個p3p以讓IE支援跨域cookie

    回覆
    0
  • 取消回覆