我正在尝试设置 Angular 应用程序以与 2 个不同的本地主机配合使用。
我已在项目根目录下创建了一个名为 backend
的文件夹,并在其中添加了一个名为 echo.php
的文件。在项目根目录中,我还创建了一个名为 proxy.conf.json 的文件,并将以下内容添加到其中:
{
"/backend/**": {
"target": "http://localhost:80",
"secure": false
}
}
我尝试使用以下代码获取echo.php:
ngOnInit(){
this.http.get('http://localhost:4200/backend/echo.php').subscribe(data => {
console.log(data);
});
}
启动Angular应用:
ng serve --port 4200 --host 0.0.0.0 --proxy-config proxy.conf.json
在浏览器控制台中,我遇到了一个 504错误 网关超时
。而在终端中,这个错误听起来有点不同:
[HPM] Error occurred while trying to proxy request /backend/echo.php from localhost:4200 to http://localhost:80 (ENOTFOUND)
我不知道自己错在哪里,请问你能指引我正确的方向吗?我可以通过这个 URL http://localhost/backend/echo.php 直接访问非 Angular(运行于 80 端口)服务器上的文件。
编辑:
echo.php:
<?php
echo "data from php";
php
并包含您的PHP代码和相关配置,可能会更有帮助。(您是否使用了某个PHP框架?也请包含该信息) - Danielng serve
记录的消息?如果是curl,请发布你使用的命令。此外,你在哪个系统/容器上运行这个程序? - Daniel