新しいアプリケーションのAngle-Cliセットアップを実行しました。私はポートのローカルAPIを提供しているApacheを実行しています。http://localhost/path/to/apiです。もちろん、ng start
は、でhttp://localhost:4200になります。Angular-CLIとApacheの問題
関連性がある場合は、Windows 10を使用しています。
だから私は、角度-CLIのプロキシを研究しproxy.config.json
を作成しました:
{
"/api/": { //I've tried "/api", "/api", "/api/*", none worked
"target" : {
"host": "localhost",
"protocol": "http:",
"port": 80
}, //also tried just straight "http://localhost" and "http://localhost:80"
"secure" : false,
"changeOrigin": false,
"logLeverl" : "debug",
"pathRewrite": {
"^/api/clients/public/" : "/path/to/api/clients/public/"
}
}
}
そしてpackage.json
経由npm start
にそれをフックアップ。特定のパスでテストするために"pathRewrite"
を追加しました。コンソールで
、私はコール/api/clients/public/
ためERROR Object { _body: "<!DOCTYPE html> <html lang="en"> <h…", status: 404, ok: false, statusText: "Not Found", headers: Object, type: 2, url: "http://localhost:4200/path/to/api/clients/public/" }
は、だから私は知っているURLからのプロキシ設定が働いている(pathRewriteが有効になっている)が、ポートが変更されません取得します。
私はインターネットとドキュメントで見つけた設定のすべての順列を試しました。
アイデアはありますか?
Angularアプリケーションフォルダにシンボリックリンクを使用してみましたが、それはindex.htmlにリダイレクトされています。そのパスをリダイレクトから除外する方法がある場合は、それも私の仕事です。
私はこの単純なバージョンを試しましたが、悲しいかなか動作しません。 pathRewriteは、問題をデバッグするためのものです。 – dmcblue
フロントエンドがAngularで書かれていない場合にApacheサーバーが提供するデータは何ですか? –