Heim  >  Fragen und Antworten  >  Hauptteil

javascript - Kann die von vue-cli konfigurierte ProxyTable-Proxy-Anfrage-API nur in der Entwicklungsumgebung verwendet werden? Das Ausführen von Build to Package und das Einfügen in Apache funktioniert nicht

Das ist die Konfiguration

proxyTable: {
    '/api': {
      target: 'http://news-at.zhihu.com',
      changeOrigin: true,
      pathRewrite: {
        '^/api': '/api'
      }
    }      
}

Verwenden Sie Axios, um Daten anzufordern

Sie können npm run dev direkt ausführen, aber Sie können die API nicht erhalten, nachdem Sie sie gepackt und auf Apache gestellt haben

Fehlerberichterstattung

扔个三星炸死你扔个三星炸死你2686 Tage vor1541

Antworte allen(4)Ich werde antworten

  • 代言

    代言2017-06-12 09:33:23

    一般都是build之后部署到正式环境吧,对于你说的放到Apache下,实际对于/api/xxx的请求也是针对该Apache Server的。所以你需要给Apache搞一个/api 的rewrite(反向代理)

    可以参考nginx的配置:

    location /api/ {
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded $proxy_add_x_forwarded_for;
        proxy_pass http://news-at.zhihu.com/api/;
    }

    Antwort
    0
  • phpcn_u1582

    phpcn_u15822017-06-12 09:33:23

    你看配置proxyTable都是写在dev的上的,证明这个只适用于dev环境。本质上是本地开了一个服务器dev-server,所有的请求都通过这里转发出去。

    Antwort
    0
  • 阿神

    阿神2017-06-12 09:33:23

    你要自己跑一个node的web服务然后在里面用这个才行

    Antwort
    0
  • 给我你的怀抱

    给我你的怀抱2017-06-12 09:33:23

    这个配置文件完全可以单独写一个config文件里面引用就可以了,就不会出现这种情况

    Antwort
    0
  • StornierenAntwort