使用Azure App Service部署PHP网站最简便,支持自定义PHP版本与扩展。通过FTP或本地Git上传代码至/site/wwwroot目录。在“配置”中选择PHP版本,并通过应用设置或Kudu上传自定义php.ini以启用GD、cURL等扩展。若需数据库连接,推荐使用Azure Database for MySQL,在“连接字符串”中配置后,通过getenv()读取环境变量实现安全访问。注意路径权限与扩展加载细节,确保应用正常运行。整个流程无需管理服务器,简化运维。

将PHP网站部署到微软Azure云服务器,可以通过多种方式实现。最常见的是使用Azure App Service,它原生支持PHP应用,无需管理底层服务器。以下是完整的部署流程与配置方法。
选择合适的Azure服务
Azure提供多个运行PHP的选项,推荐使用App Service(Web Apps),因为它简化了部署和运维:
- Azure App Service:适合大多数PHP网站,支持自定义PHP版本、扩展和Web.config配置
- Azure Virtual Machines强大控制权,但需自行维护操作系统和Web服务器>
- Azure Container Instances / AKS:适用于Docker化PHP应用
对于普通PHP项目,首选App Service。
通过FTP或本地Git部署代码
创建App Service后,可通过以下方式上传代码:
立即学习“PHP免费学习笔记(深入)”;
1. 使用FTP- 在Azure门户中进入你的App Service
- 点击“获取FTP凭据”,设置部署用户名和密码
- 使用FileZilla等工具连接FTP地址,上传文件到
/site/wwwroot
- 在App Service中启用“本地Git”部署
- 添加Azure远程仓库:
git remote add azure https://@ .scm.azurewebsites.net:443/ .git - 推送代码:
git push azure main
配置PHP环境与运行参数
Azure App Service默认支持PHP,但需要手动配置版本和扩展:
- 进入App Service → “配置” → “常规设置”
- 在“堆栈”中选择“PHP”,然后选择具体版本(如8.2)
- 若需开启扩展(如GD、cURL),可在
php.ini中配置,或通过“应用设置”添加:
例如,在“应用设置”中添加:
-
PHP_INI_SCAN_DIR=D:\home\site\ini
然后通过Kudu控制台(https://)上传自定义php.ini文件到指定目录。
连接数据库与环境变量设置
如果使用MySQL或MariaDB,推荐Azure Database for MySQL:
- 创建数据库实例并配置防火墙允许Azure服务访问
- 在App Service的“连接字符串”或“应用设置”中添加数据库信息
- 在PHP代码中读取环境变量:
示例代码:
$host = getenv('MYSQL_HOST');
$user = getenv('MYSQL_USER');
$pass = getenv('MYSQL_PASSWORD');
$db = getenv('MYSQL_DATABASE');
$conn = new mysqli($host, $user, $pass, $db);
这样避免将敏感信息硬编码在代码中。
基本上就这些。只要正确设置PHP版本、上传代码并配置好环境变量,大多数PHP网站都能顺利运行在Azure上。整个过程不复杂,但容易忽略细节如扩展加载或路径权限。











