基于阿里云 Serverless 函数计算搭建按量付费的 WordPress 网站

本文涉及的产品
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
函数计算FC,每月15万CU 3个月
云原生网关 MSE Higress,422元/月
简介: Serverless 经过几年的发展,已经和传统服务器一样好用了。我最初接触 Serverless 是在 2020 年的云开发校园合伙人创造营上,当时我基于阿里云云开发平台部署了一个在线工具箱。

作者:刘天棋


本文选自 Serverless 函数计算征集令 活动


序言


Serverless 过几年的发展,已经和传统服务器一样好用了。我最初接触 Serverless 是在 2020 年的云开发校园合伙人创造营上,当时我基于阿里云云开发平台部署了一个在线工具箱。


1.png

Serverless 发展简史


网站背后的运行技术服务的发展就像人类的进化:物理服务器时代——云计算时代——无服务器化时代,但是有些老系统不能直接部署到 Serverless,必须进行一定的拆解,这无形之中增加了一道门槛。


本文我将介绍如何基于阿里云 Severless 函数计算 FC 搭建按量付费的 WordPress 网站。


简介

通过阿里云函数计算FC,您无需管理服务器等基础设施,只需编写代码并上传。函数计算会为您准备好计算资源,以弹性、可靠的方式运行您的代码。更棒的是,您只需要为代码实际运行消耗的资源付费 - 代码未运行则不产生费用。


下表是传统方式搭建服务和 Serverless 的对比:


2.png


准备事项


1. 阿里云函数计算 FC,可按量付费,有免费额度


2. 文件储存 NAS,可按量付费


3. 云数据库 RDS 版


4. 日志服务 SLS


在进行本文的操作前,需要先开通上述四项服务,并开通在同一地域的同一 VPC 下。


流程操作


NAS


1. 访问阿里云 NAS 控制台


2. 创建通用型 NAS 文件系统。在这里我选择华东 1(杭州)地域。


3.png


3. 系统已经自动创建了挂载点,所以我们无需再进行创建挂载点的操作。


4.png


阿里云函数计算 FC


1. 访问阿里云函数计算控制台


2. 在“概览”中进入刚才创建 NAS 服务时选择的地域。


5.png


3. 创建服务。需要选择允许访问 VPC 并且允许访问公网,选择好刚才创建 NAS 服务时使用的 VPC 和交换机,如果没有安全组,则需要新建安全组。


6.png


7.png


服务角色按默认选择。


8.png


4. 在函数的“服务详情”页面,找到“储存配置”选项,点击编辑。


9.png


5. 启用 NAS,并选择自动配置。


10.png


6. 回到函数管理界面,创建新函数,选择创建一个空白函数。


11.png


运行环境选择 php7.2,并勾选“处理 http 请求”。


12.png


配置触发器,请求方式全部勾选,最后点击创建。


13.png


7. 进入函数详情页面,编辑默认提供的代码为下面的这段代码。


14.png


getAttribute("requestURI");
$uriArr = explode("?", $uri); // default php / or /wp-admin/     
if (preg_match('#/$#', $uriArr[0]) && !(strpos($uri, '.php'))) 
{
$uriArr[0] .= "index.php";         
$uri = implode($uriArr);
     }     
$proxy    = $GLOBALS['fcPhpCgiProxy'];     
$root_dir = '/mnt/www';     //php script     
if (preg_match('#\.php.*#', $uri)) 
{         
$host   = "www.stgit.cn"; // 此处填写你的域名         
$resp   = $proxy->requestPhpCgi($request, $root_dir, "index.php", 
['HTTP_HOST' => $host, 'SERVER_NAME' => $host, 'SERVER_PORT' => '80'],             
['debug_show_cgi_params' => false, 'readWriteTimeout' => 60000]
);         
return $resp;
     } 
else {         // static files, js, css, jpg ...         
$filename = $root_dir . explode("?", $uri)[0];         
$filename = rawurldecode($filename);         
$handle   = fopen($filename, "r");         
$contents = fread($handle, filesize($filename));         fclose($handle);         
$headers = [
'Content-Type'  => $proxy->getMimeType($filename),   
'Cache-Control' => "max-age=8640000",             
'Accept-Ranges' => 'bytes',         
];         
return new Response(200, $headers, $contents);
     } 
}

8. 之后回到函数计算控制台,在高级功能—域名管理中配置自定义域名。


15.png


域名填写已经接入阿里云备案的域名,路由配置选择刚才的服务名称和函数名称,点击创建。注意:这里需要把域名解析到提供的内网 chame。


9. 上传 wordpress 程序


为了简便操作,本文通过开一台按量付费的 ECS 挂载 NAS 然后通过 SFTP 进行可视化操作来上传程序。


可通过类似下面的命令将 NAS 通过 NFS 的方式挂载至目录下。


mount -t nfs -o vers=4.0 16d3e4b609-cub21.cn-hangzhou.nas.aliyuncs.com:/ /mnt

17.png


10. 访问我们绑定的域名。


18.png


至此部署完成。


参考链接:


[1] 阿里云函数计算 FC:

https://www.aliyun.com/product/fc


[2] 阿里云 NAS 控制台

https://nasnext.console.aliyun.com/overview


[3] 阿里云函数计算控制

https://fcnext.console.aliyun.com/overview



阿里云 Serverless 近期热门活动


19.jpeg


2022 阿里云 Serverless Developer Meetup 杭州站火热报名中!


点击此处,立即报名!

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
11天前
|
Cloud Native 安全 Serverless
云原生应用实战:基于阿里云Serverless的API服务开发与部署
随着云计算的发展,Serverless架构日益流行。阿里云函数计算(Function Compute)作为Serverless服务,让开发者无需管理服务器即可运行代码,按需付费,简化开发运维流程。本文从零开始,介绍如何使用阿里云函数计算开发简单的API服务,并探讨其核心优势与最佳实践。通过Python示例,演示创建、部署及优化API的过程,涵盖环境准备、代码实现、性能优化和安全管理等内容,帮助读者快速上手Serverless开发。
|
11天前
|
SQL 存储 OLAP
阿里云 EMR Serverless StarRocks3.x,极速统一的湖仓新范式
阿里云 EMR Serverless StarRocks3.x,极速统一的湖仓新范式
|
11天前
|
SQL 分布式计算 Serverless
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
基于阿里云 EMR Serverless Spark 版快速搭建OSS日志分析应用
|
2月前
|
人工智能 运维 物联网
云大使 X 函数计算 FC 专属活动上线!享返佣,一键打造 AI 应用
如今,AI 技术已经成为推动业务创新和增长的重要力量。但对于许多企业和开发者来说,如何高效、便捷地部署和管理 AI 应用仍然是一个挑战。阿里云函数计算 FC 以其免运维的特点,大大降低了 AI 应用部署的复杂性。用户无需担心底层资源的管理和运维问题,可以专注于应用的创新和开发,并且用户可以通过一键部署功能,迅速将 AI 大模型部署到云端,实现快速上线和迭代。函数计算目前推出了多种规格的云资源优惠套餐,用户可以根据实际需求灵活选择。
|
9天前
|
人工智能 运维 架构师
Serverless + AI 让应用开发更简单,加速应用智能化
Serverless + AI 让应用开发更简单,加速应用智能化
|
1月前
|
机器学习/深度学习 分布式计算 大数据
阿里云 EMR Serverless Spark 在微财机器学习场景下的应用
面对机器学习场景下的训练瓶颈,微财选择基于阿里云 EMR Serverless Spark 建立数据平台。通过 EMR Serverless Spark,微财突破了单机训练使用的数据规模瓶颈,大幅提升了训练效率,解决了存算分离架构下 Shuffle 稳定性和性能困扰,为智能风控等业务提供了强有力的技术支撑。
154 15
|
6月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
312 13
|
2月前
|
存储 人工智能 Serverless
7分钟玩转 AI 应用,函数计算一键部署 AI 生图大模型
人工智能生成图像(AI 生图)的领域中,Stable Diffusion WebUI 以其强大的算法和稳定的输出质量而闻名。它能够快速地从文本描述中生成高质量的图像,为用户提供了一个直观且高效的创作平台。而 ComfyUI 则以其用户友好的界面和高度定制化的选项所受到欢迎。ComfyUI 的灵活性和直观性使得即使是没有技术背景的用户也能轻松上手。本次技术解决方案通过函数计算一键部署热门 AI 生图大模型,凭借其按量付费、卓越弹性、快速交付能力的特点,完美实现低成本,免运维。
|
3月前
|
人工智能 Serverless API
尽享红利,Serverless构建企业AI应用方案与实践
本次课程由阿里云云原生架构师计缘分享,主题为“尽享红利,Serverless构建企业AI应用方案与实践”。课程分为四个部分:1) Serverless技术价值,介绍其发展趋势及优势;2) Serverless函数计算与AI的结合,探讨两者融合的应用场景;3) Serverless函数计算AIGC应用方案,展示具体的技术实现和客户案例;4) 业务初期如何降低使用门槛,提供新用户权益和免费资源。通过这些内容,帮助企业和开发者快速构建高效、低成本的AI应用。
113 12
|
7月前
|
Serverless API 异构计算
函数计算产品使用问题之修改SD模版应用的运行环境
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。

相关产品

  • 函数计算