全部产品

PHP前后端一体化方案

更新时间:2020-09-14 16:14:03

登录阿里云Serverless云开发平台,进入应用列表,点击「创建新应用」,选择「技术场景」,勾选「WEB」,在「解决方案」中,选择「PHP前后端一体化应用方案」,点击下一步,按照提示完成应用的创建

创建静态应用

  • 将本地开发好的静态应用直接拖拽到 CloudIDE 项目文件列表即可
  • 或者直接在 CloudIDE 项目文件列表创建

创建API

  • 建议在 CloudIDE 项目文件列表创建目录用于统一存放相关的 API
  • API 格式
    1. function handler($event, $context) {
    2. $request = (array) json_decode($event, true);// 请求内容都会存储在 event 中,JSON编码后可遍历查看具体的内容
    3. // do sth
    4. $msg = '你好,世界!';
    5. // 返回值格式
    6. $responseObject = array(
    7. "isBase64Encoded" => false,//与 body 内容是否进行 base64 编码保持一致
    8. "statusCode" => 200,//状态码,根据返回值自行决定适合的状态码
    9. "headers" => array(
    10. "Content-type" => "text/html; charset=utf-8"//根据返回值设置正确的 Content-type
    11. ),
    12. "body" => $msg//返回值
    13. );
    14. return $responseObject;//返回结果
    15. }
  • API 必须加入 serverless.php 的 SAFE 列表配置当中,避免泄漏

调试

  • 打开 CloudIDE 的「终端」
  • 输入 sudo apt-get install php-cli 安装 php 命令行工具
  • 安装成功后,在 CloudIDE 的「终端」输入 php test.php 即可调试代码

部署

  • 系统默认路由 /* 不可更改
  • 打开云开发部署测试插件,选择环境,直接部署

系统文件

  • .workbench

    • 不可删除,云开发平台应用部署配置文件
    • fcRouteDefault,「路由/函数入口」配置入口
    • cicd,构建打包部署应用的 Shell 指令集;核心:将要部署的内容全部打包到项目根目录的 code.zip 压缩包,云开发平台只认项目根目录的 code.zip 压缩包进行部署
  • serverless.php

    • SAFE,不可访问扩展名的目录或文件配置入口。加入此列表的目录,代表该目录下所有的文件都不可通过扩展名进行访问;加入此列表的文件,也不能通过扩展名进行访问;