ServerLess实战:函数计算+NAS搭建无服务器thinkphp5

本文涉及的产品
函数计算FC,每月15万CU 3个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 如果太忙都有可能忘记续费主机或者服务器,而且每次买配置过低或者过高都不合适,所以这次用函数计算+NAS搭建无需续费无存储大小限制无需考虑带宽CPU等性能瓶颈,来搭建常用的tp5 先放懒人包下载,上传即用 1、必备条件 A、开通函数计算与NAS服务 B、绑定函数计算域名 C、挂载NAS到同区域节点的ECS上方便文件的复制粘贴修改操作 D、给账户充钱。

如果太忙都有可能忘记续费主机或者服务器,而且每次买配置过低或者过高都不合适,所以这次用函数计算+NAS搭建无需续费无存储大小限制无需考虑带宽CPU等性能瓶颈,来搭建常用的tp5

先放懒人包下载,详见附件,上传NAS

1、必备条件
A、开通函数计算与NAS服务
B、绑定函数计算域名
C、挂载NAS到同区域节点的ECS上方便文件的复制粘贴修改操作
D、给账户充钱。函数计算和NAS扣费都是后付费,要保证账户余额
2、函数计算配置详解
A、选择区域创建服务,要和NAS选择同一区域
360_20190930162537249

B、新建服务、绑定NAS
360_20190930162657455
TIM_20190930162811
绑定nas的时候写用户不用用他默认的-1,那个读不出来,自己随便定一个ID
C、新建函数、编写函数代码

选择HTTP函数,运行环境选择php7.2,触发器选择任何人,其他随意
以下是函数代码,
AI 代码解读
<?php
//#自定义的域名,绑定了自定义域名的,可以换成自己自定义的。
$MY_HOST    = "你的地址哈3333.cn-cn-hangzhou.fc.aliyuncs.com";
//#web目录,默认是tp5的public目录,绝对路径,如:/code/public
$WWW_DIR = '/mnt/think5/public';
 
function handler($request, $context){
 
 
$uri  = $request->getAttribute("requestURI");
//return $uri;
$file = explode("?", $uri)[0];
if($file=='/') $uri='/';
$file = $GLOBALS['WWW_DIR'].$file;
 
if(file_exists($file) and $uri!='/'){
    if(strpos($uri,".php")) return php_run(basename($file), $request, $context);#php_run
    return static_run($uri);#static_run
}
 
$request = $request->withAttribute("requestURI", "?s=".$uri);
return php_run('index.php', $request, $context);# php_run
 
}
 
function php_run($name,$request, $context)
{
return $GLOBALS['fcPhpCgiProxy']->requestPhpCgi($request, $GLOBALS['WWW_DIR'], $name,['SERVER_NAME' => $GLOBALS['MY_HOST'], 'SERVER_PORT' => '80', 'HTTP_HOST' => $GLOBALS['MY_HOST']],['debug_show_cgi_params' => false, 'readWriteTimeout' => 15000]);
}
use RingCentral\Psr7\Response;
function static_run($uri): Response{
$file_dir = $GLOBALS['WWW_DIR'].$uri; #完整文件路径
$file_dir = explode("?", $file_dir)[0]; #去掉动态路径
if(is_dir($file_dir)) $file_dir .= '/index.html';# 可以这里定义目录的默认索引页
$handle   = fopen($file_dir, "r");
$contents = fread($handle, filesize($file_dir));
fclose($handle);
return new Response(200, ['Content-Type'  => $GLOBALS['fcPhpCgiProxy']->getMimeType($file_dir),'Cache-Control' => "max-age=8640000",'Accept-Ranges' => 'bytes'], $contents);
}
 
function clearFcHost($request,$context){
$uri  = $request->getAttribute("requestURI");
$uri  = str_replace("/2016-08-15/proxy/".$context['service']['name']."/".$context['function']['name'],"",$uri);
$request = $request->withAttribute("requestURI", $uri);
return $request;
}
 
AI 代码解读

D、配置自定义域名
如图:
360_20190930163819751

3、NAS配置详解
在对应目录上传代码包,点击下载,解压缩代码即可
4、测试访问
你的域名直接访问
你的域名/index.php?s=index/index/index
你的域名/about

都没问题的话就大功告成

目录
打赏
0
0
1
0
1
分享
相关文章
服务器数据恢复—NAS存储精简lv的故障的数据恢复案例
NAS数据恢复环境: QNAP TS-532X NAS设备中有两块1T的SSD固态硬盘和3块5T的机械硬盘。三块机械硬盘组建了一组RAID5阵列,两块固态硬盘组建RAID1阵列。划分了一个存储池,并通过精简LVM划分了7个lv。 NAS故障: 硬盘故障导致无法正常进入系统,7个lv分区丢失。
Websoft9 服务器面板中 Odoo 安装与群晖 NAS 的对比
传统部署Odoo面临基础设施搭建、镜像供应链、复杂配置及运维监控四大难题,而群晖NAS方案存在Docker依赖、插件更新滞后和配置自由度低的局限。Websoft9提供开箱即用的解决方案:无需预装Docker,三键式安装支持全版本Odoo;具备企业级扩展功能如负载均衡与集群部署;兼容混合云架构,支持公有云、私有云及边缘设备管理;同时确保合规性,自动扫描漏洞并生成修复报告,大幅提升部署效率与系统安全性。
函数计算产品使用问题之如何部署Stable Diffusion Serverless API
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
服务器数据恢复—nas中raid6阵列失效,存储无法访问的数据恢复案例
一台nas上共有14块硬盘组建了一组raid6磁盘阵列。 该nas在工作过程中,raid6阵列中硬盘出现故障离线,导致raid6阵列失效,nas无法正常访问。
Serverless 支撑赛事转播问题之利用函数计算实现图片处理的实时性和成本节约如何解决
Serverless 支撑赛事转播问题之利用函数计算实现图片处理的实时性和成本节约如何解决
一台UPS实现NAS、PC和服务器的自动关机
一台UPS实现NAS、PC和服务器的自动关机
Serverless 支撑赛事转播问题之利用函数计算处理视频直播截帧服务如何解决
Serverless 支撑赛事转播问题之利用函数计算处理视频直播截帧服务如何解决
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
鹰角网络为应对游戏业务高频活动带来的数据潮汐、资源弹性及稳定性需求,采用阿里云 EMR Serverless Spark 替代原有架构。迁移后实现研发效率提升,支持业务快速发展、计算效率提升,增强SLA保障,稳定性提升,降低运维成本,并支撑全球化数据架构部署。
340 56
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
Serverless架构下的OSS应用:函数计算FC自动处理图片/视频转码(演示水印添加+缩略图生成流水线)
本文介绍基于阿里云函数计算(FC)和对象存储(OSS)构建Serverless媒体处理流水线,解决传统方案资源利用率低、运维复杂、成本高等问题。通过事件驱动机制实现图片水印添加、多规格缩略图生成及视频转码优化,支持毫秒级弹性伸缩与精确计费,提升处理效率并降低成本,适用于高并发媒体处理场景。

相关产品

  • 函数计算
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等

    登录插画

    登录以查看您的控制台资源

    管理云资源
    状态一览
    快捷访问