【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法

问题描述

在App Service for Windows的环境中,当前只提供了PHP 7.4 版本的选择情况下,如何实现自定义PHP Runtime的版本呢? 如 PHP Version 8.1.9?

当App Service创建号值后,并且在门户上设置PHP Version版本位 PHP 7.4, 然后进入Kudu站点中,进入 C:\home\sites\wwwroot目录中,创建一个index.php 文件,文件内容为:

<?php

echo "Hello World! This is phpinfo result! ";

phpinfo();

文件保存后,访问App Service的默认URL: https://<yourappservicename>.chinacloudsites.cn , 得出当前PHP Version 为 7.4.28, 如果这里需要使用8.1.*的版本,而App Service有没有提供这个版本? 应该如何自定义PHP呢?

 

操作实现

是的,App Service for Windows支持自定义PHP Runtime Version。 可以通过以下四个步骤完成自定义操作。

第一步:下载合适的PHP for Windows版本,如本次实验中使用的8.1.9 

下载地址:https://windows.php.net/download/

 

第二步:解压并修改php.ini文件

在解压后的文件夹中,找到 php.ini-development文件,打开并在On Windows下反注释掉 [extension_dir = "ext" ] 部分。然后修改文件名为 php.ini

 PS: 如果项目中,有需要其他PHP扩展,可以直接在 php.ini 文件中启用这些扩展。 

 

第三步:打开Kudu站点,在wwwroot目录下创建一个php目录,并把第二步中问价夹中的全部文件上传到wwwroot中的php目录中

1)进入App Service的kudu 站点(https://<yourappservicename>.scm.chinacloudsites.cn),选择Debug Console --> C:\home\site\wwwroot> 目录

2)在目录中创建一个php文件夹

3)把第二步中的所有文件打包为zip文件,然后通过拖拽方式,放入kudu站点上php文件夹的右上部分,kudu会自动解压zip文件到当前目录

PS: 这一步也可以通过其他部署方式实现,如FTP, Git等,只要能把本地php runtime文件全部上传到wwwroot中即可

操作步骤动画如下:

 

第四步:修改App Service的  Handler mappings, 添加 *.php 扩展,并且指向第三步中目录中的 php-cgi.exe

在Path mappings选项卡中,添加 *.php 新扩展, Script Processor为: C:\home\site\wwwroot\php\php-cgi.exe

 

第五步:保存修改后,重新访问App Service默认URL,查看PHP Version的改变为8.1.9

自定义操作成功!

 

 

 

参考资料

PHP For Windows: https://windows.php.net/download/

 

 

[END]

 

posted @   路边两盏灯  阅读(358)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2021-08-23 【Azure 应用服务】能否通过 Authentication 模块配置 Azure AD 保护 API 应用?
2020-08-23 【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
2020-08-23 【应用程序见解 Application Insights】在Application Insights中通过自定义查询结果定义指标并显示在Dashboard中
2020-08-23 【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息
点击右上角即可分享
微信分享提示