前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Web Function】初体验:PHP搭建TP框架服务

【Web Function】初体验:PHP搭建TP框架服务

原创
作者头像
宣言言言
修改2021-07-02 14:45:21
1.6K1
修改2021-07-02 14:45:21
举报
文章被收录于专栏:宣言(Siam)博客宣言(Siam)博客

前言

Serverless 可以让用户快速将项目以较小成本部署,按需运行,节约资源

Web Function 基本跟普通Web应用开发流程无差别,却能将Serverless模式发挥

这篇文章 记录一下 怎么在Web Function 服务中,部署PHP项目,其中有一些小技巧、总体流程。

本次测试总结

先在文首总结一下本次测试感受和建议

  1. 教程说明文档可能还不够明显、详细
  2. 对于php的支持不够完善,如composer命令
  3. php版本不够灵活(其他语言不知是否有该问题) 如php7 其实是7.2.2 但项目所需是7.2.4 没有找到切换版本入口
  4. 以php cli模式监听服务,对路由处理可能存在缺陷,无法同nginx一般 定义伪静态规则

创建示例项目

选择PHP5或者PHP7,这里用的示例项目是TP6,所以选择7的

创建完成之后的示例项目结构如下

原理解析

这里的原理是:PHP cli模式, php -S 是创建一个轻量HTTP服务,监听9000端口 使用的入口文件是hello.php

我们的总思路是:php think run 模式(TP6),运行TP服务,监听0.0.0.0:9000端口

scf_bootstrap是Web Function的部署脚本,在其中定义项目部署后的运行命令,启动HTTP服务。

开发流程

  1. 在本地开发,并且composer安装好组件包(写文章时,Web Function暂不支持运行composer指令)
  2. 在本地项目根目录创建 scf_bootstrap脚本,写明TP框架启动命令
  3. 打包zip,上传,并部署

测试目录结构、脚本内容

代码语言:javascript
复制
#!/bin/bash
/var/lang/php7/bin/php  -c /var/runtime/php7 think run -p 9000 -H 0.0.0.0

一些调试技巧

上传压缩包

image.png
image.png

上传代码后,可以在终端中运行脚本,测试环境(一开始没有测试,直接跑,结果报错HTTP405)

image.png
image.png
image.png
image.png

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 本次测试总结
      • 创建示例项目
        • 原理解析
          • 开发流程
            • 测试目录结构、脚本内容
              • 一些调试技巧
                • 上传压缩包
                • 上传代码后,可以在终端中运行脚本,测试环境(一开始没有测试,直接跑,结果报错HTTP405)
            相关产品与服务
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档