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

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
应用实时监控服务-应用监控,每月50GB免费额度
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
简介: 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 架构模式
相关文章
|
16天前
|
分布式计算 运维 搜索推荐
立马耀:通过阿里云 Serverless Spark 和 Milvus 构建高效向量检索系统,驱动个性化推荐业务
蝉妈妈旗下蝉选通过迁移到阿里云 Serverless Spark 及 Milvus,解决传统架构性能瓶颈与运维复杂性问题。新方案实现离线任务耗时减少40%、失败率降80%,Milvus 向量检索成本降低75%,支持更大规模数据处理,查询响应提速。
130 57
|
1月前
|
人工智能 开发框架 安全
Serverless MCP 运行时业界首发,函数计算让 AI 应用最后一公里提速
作为云上托管 MCP 服务的最佳运行时,函数计算 FC 为阿里云百炼 MCP 提供弹性调用能力,用户只需提交 npx 命令即可“零改造”将开源 MCP Server 部署到云上,函数计算 FC 会准备好计算资源,并以弹性、可靠的方式运行 MCP 服务,按实际调用时长和次数计费,欢迎你在阿里云百炼和函数计算 FC 上体验 MCP 服务。
229 29
|
5月前
|
人工智能 Java Serverless
阿里云函数计算助力AI大模型快速部署
随着人工智能技术的快速发展,AI大模型已经成为企业数字化转型的重要工具。然而,对于许多业务人员、开发者以及企业来说,探索和利用AI大模型仍然面临诸多挑战。业务人员可能缺乏编程技能,难以快速上手AI模型;开发者可能受限于GPU资源,无法高效构建和部署AI应用;企业则希望简化技术门槛,以更低的成本和更高的效率利用AI大模型。
453 12
|
1月前
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
135 12
|
3月前
|
存储 分布式计算 物联网
美的楼宇科技基于阿里云 EMR Serverless Spark 构建 LakeHouse 湖仓数据平台
美的楼宇科技基于阿里云 EMR Serverless Spark 建设 IoT 数据平台,实现了数据与 AI 技术的有效融合,解决了美的楼宇科技设备数据量庞大且持续增长、数据半结构化、数据价值缺乏深度挖掘的痛点问题。并结合 EMR Serverless StarRocks 搭建了 Lakehouse 平台,最终实现不同场景下整体性能提升50%以上,同时综合成本下降30%。
367 58
|
1月前
|
人工智能 开发框架 运维
Serverless MCP 运行时业界首发,函数计算让 AI 应用最后一公里提速
Serverless MCP 运行时业界首发,函数计算支持阿里云百炼 MCP 服务!阿里云百炼发布业界首个全生命周期 MCP 服务,无需用户管理资源、开发部署、工程运维等工作,5 分钟即可快速搭建一个连接 MCP 服务的 Agent(智能体)。作为云上托管 MCP 服务的最佳运行时,函数计算 FC 为阿里云百炼 MCP 提供弹性调用能力。
190 0
 Serverless MCP 运行时业界首发,函数计算让 AI 应用最后一公里提速
|
3月前
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
3月前
|
Cloud Native 安全 Serverless
云原生应用实战:基于阿里云Serverless的API服务开发与部署
随着云计算的发展,Serverless架构日益流行。阿里云函数计算(Function Compute)作为Serverless服务,让开发者无需管理服务器即可运行代码,按需付费,简化开发运维流程。本文从零开始,介绍如何使用阿里云函数计算开发简单的API服务,并探讨其核心优势与最佳实践。通过Python示例,演示创建、部署及优化API的过程,涵盖环境准备、代码实现、性能优化和安全管理等内容,帮助读者快速上手Serverless开发。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
企业级API集成方案:基于阿里云函数计算调用DeepSeek全解析
DeepSeek R1 是一款先进的大规模深度学习模型,专为自然语言处理等复杂任务设计。它具备高效的架构、强大的泛化能力和优化的参数管理,适用于文本生成、智能问答、代码生成和数据分析等领域。阿里云平台提供了高性能计算资源、合规与数据安全、低延迟覆盖和成本效益等优势,支持用户便捷部署和调用 DeepSeek R1 模型,确保快速响应和稳定服务。通过阿里云百炼模型服务,用户可以轻松体验满血版 DeepSeek R1,并享受免费试用和灵活的API调用方式。
297 12
|
3月前
|
机器学习/深度学习 分布式计算 大数据
阿里云 EMR Serverless Spark 在微财机器学习场景下的应用
面对机器学习场景下的训练瓶颈,微财选择基于阿里云 EMR Serverless Spark 建立数据平台。通过 EMR Serverless Spark,微财突破了单机训练使用的数据规模瓶颈,大幅提升了训练效率,解决了存算分离架构下 Shuffle 稳定性和性能困扰,为智能风控等业务提供了强有力的技术支撑。
224 15

相关产品

  • 函数计算