使用WAMP运行本地Yii2服务器

问题描述 投票:0回答:1

我是一个前端JS开发人员,我已经开始研究一个项目,该项目的PHP后端与Yii2框架一起运行。该项目没有设置说明,因此我正在尝试解决它,但是来自Node.js ...这非常令人困惑。

我下载并安装了WAMP,使用MyPHPAdmin为API创建了MySQL数据库,并从转储中导入了数据。那行得通,我可以看到表格和数据。现在,当我转到localhost时,我看到WAMP正在运行。我尝试了示例Yii项目,该项目也在localhost/yii-test/web上运行。

根据Yii,我要通过将整个API目录移到WAMP安装的/www目录中来提供此API。现在,如果我转到localhost/fania-api,则会看到服务器的目录列表。对我来说,这表示该API可在本地访问。

我已经将前端的.env配置为指向localhost/fania-api,但是当我发送任何请求时,我会收到CORS错误,我认为这是掩盖了404或500错误。现在有趣的是,给我的.env带有URL http://fanintelligence.localhost,而不是给定的Yii localhost/fania-api

所以我的问题是这两件事如何融合在一起?我安装了WAMP并将MySQL DB设置为默认端口,但是我的API如何知道它在那里?我怎么知道这是正确的端口?那这两个不同的网址又如何匹配?

而且API不包含/ web文件夹,不确定是否是问题,但是我也无法使用php yii serve来提供它。如果这是一个Node.js服务器,我将克隆npm installnpm run start,它们可能会执行类似buildserve的操作。我不敢相信比较起来很难设置。

非常感谢任何建议或帮助!

编辑:当我尝试从任何一个地址的前端访问服务器时,都会得到:Access to fetch at 'http://localhost/fania-api/oauth2/token?accessToken=undefined' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled. /fania-api/oauth2/token?accessToken=undefined:1 Failed to load resource: net::ERR_FAILED但是,我不认为这是实际的CORS错误,因为以前的开发人员也使用本地进行测试,因此CORS政策将允许这样做。我的猜测是我指向的地址不正确,或者服务器实际上未启动。

如果我尝试运行php yii serveDocument root "C:\Users\hesel\dev\repo\eartotheground\fania-api\console/web" doe s not exist.

但是错误行为的症结在于无法连接到本应处于活动状态的本地服务器(它甚至处于活动状态?我该如何分辨?)。>

我是一个前端JS开发人员,我已经开始研究一个项目,该项目的PHP后端与Yii2框架一起运行。该项目没有安装说明,因此我正在尝试解决问题,但是...

php mysql api yii yii2
1个回答
0
投票
  • 如果yii是通过composer安装的,请转到项目,打开终端并运行./yii serve

© www.soinside.com 2019 - 2024. All rights reserved.