本文以PHP开发的Demo应用程序为例,采用ZIP包部署方式,介绍如何将应用部署到Serverless应用引擎SAE(Serverless App Engine),并通过绑定公网SLB,让您的应用可以被公网访问。
背景信息
本文的Demo应用为SAE欢迎网页程序,支持多种PHP框架。本文将演示PHP原生代码与部分框架的部署。
获取Demo
您可以按需选择以下Demo。
PHP原生
下载hello-sae-php.zip。解压后,可获得Nginx与PHP代码文件。具体说明,请参见PHP ZIP打包说明。
.
├── nginx
│ ├── default.conf
│ ├── fastcgi_params
│ └── root.dir
└── php
│ ├── index.php
│ └── phpinfo.php
Laravel 8.x
- 下载hello-sae-php-laravel.zip。解压后,可获得Nginx与PHP代码文件。
PHP运行环境的具体说明,请参见PHP ZIP打包说明。
- 针对Laravel框架配置说明,参考如下。具体可查看/nginx与/php目录下的文件内容。
- PHP应用代码,存放路径为/home/admin/app/php/public。
- Nginx应用配置,存放路径为/home/admin/app/nginx,引用方式为
include conf.d/fastcgi_params;
。 - Nginx系统配置,存放路径为/etc/nginx。
.
├── nginx # 存放路径/home/admin/app/nginx/
│ ├── default.conf
│ ├── fastcgi_params # 引用方式include conf.d/fastcgi_params;
│ └── root.dir
├── php # 存放路径/home/admin/app/php
│ ├── README.md
│ ├── app
│ ├── artisan
│ ├── bootstrap
│ ├── composer.json
│ ├── composer.lock
│ ├── config
│ ├── database
│ ├── package.json
│ ├── phpunit.xml
│ ├── public # Laravel框架默认目录,配置为nginx root
│ ├── resources
│ ├── routes
│ ├── server.php
│ ├── storage
│ ├── tests
│ ├── vendor
│ └── webpack.mix.js
ThinkPHP 6
- 下载hello-sae-php-thinkphp.zip。解压后,可获得Nginx与PHP代码文件。
PHP运行环境的具体说明,请参见PHP ZIP打包说明。
- 针对ThinkPHP框架配置说明,参考如下。具体可查看/nginx与/php目录下的文件内容。
- PHP应用代码,存放路径为/home/admin/app/php/public。
- PHP应用入口,存放路径为/home/admin/app/php/public/index.php。
- Nginx应用配置,存放路径为/home/admin/app/nginx,引用方式为
include conf.d/fastcgi_params;
。 - Nginx系统配置,存放路径为/etc/nginx。
.
├── nginx # 存放路径 /home/admin/app/nginx/
│ ├── default.conf
│ ├── fastcgi_params # 引用方式 include conf.d/fastcgi_params;
│ └── root.dir
├── php # 存放路径 /home/admin/app/php
│ ├── LICENSE.txt
│ ├── README.md
│ ├── app
│ ├── composer.json
│ ├── composer.lock
│ ├── config
│ ├── extend
│ ├── public # ThinkPHP 框架默认目录,配置为nginx root
│ │ ├── index.php # ThinkPHP 框架默认入口,配置为nginx rewrite
│ ├── route
│ ├── runtime
│ ├── think
│ ├── vendor
│ └── view
WordPress 5
- 下载hello-sae-php-wordpress.zip。解压后,可获得Nginx与PHP代码文件。
PHP运行环境的具体说明,请参见PHP ZIP打包说明。
- 针对WordPress框架配置说明,参考如下。具体可查看/nginx与/php目录下的文件内容。
- PHP应用代码,存放路径为/home/admin/app/php/public。
- PHP应用入口,存放路径为/home/admin/app/php/public/index.php。
- Nginx应用配置,存放路径为/home/admin/app/nginx,引用方式为
include conf.d/fastcgi_params;
。 - Nginx系统配置,存放路径为/etc/nginx。
- 若全新安装WordPress体验,且需要安装主题、插件或上传文件,您需要额外进行如下操作,对变更进行持久化管理。
- 下载安装配置
可以通过Webshell下载保存./php/wp-config.php。具体说明,请参见Editing wp-config.php。
- 安装SFTP
具体操作,请参见一键复制安装命令。
- 安装主题插件
安装后,需要下载保存./php/wp-content/目录内容并更新到ZIP包中,或配置OSS和NAS持久化存储到目录。具体操作,请参见通过日志上传下载诊断应用。
- 下载安装配置
.
├── nginx # 存放路径/home/admin/app/nginx/
│ ├── default.conf # WordPress站点配置
│ ├── fastcgi_params # 引用方式include conf.d/fastcgi_params;
│ ├── global
│ │ ├── restrictions.conf # WordPress默认访问限制
│ │ └── wordpress.conf # WordPress默认PHP访问规则
│ └── root.dir
├── php # 存放路径/home/admin/app/php
│ ├── index.php # WordPress框架默认入口
│ ├── license.txt
│ ├── readme.html
│ ├── wp-activate.php
│ ├── wp-admin # WordPress框架管理后台
│ ├── wp-blog-header.php
│ ├── wp-comments-post.php
│ ├── wp-config-sample.php
│ ├── wp-content
│ ├── wp-cron.php
│ ├── wp-includes
│ ├── wp-links-opml.php
│ ├── wp-load.php
│ ├── wp-login.php
│ ├── wp-mail.php
│ ├── wp-settings.php
│ ├── wp-signup.php
│ ├── wp-trackback.php
│ └── xmlrpc.php
操作步骤
步骤一:创建PHP应用
步骤二:通过公网访问应用
应用部署成功后,需为应用绑定SLB,以便公网通过SLB访问应用。SAE会自动帮您购买SLB服务,您仅需配置应用的监听端口;您也可以复用在传统型负载均衡CLB控制台控制台购买的SLB。关于复用规则,请参见为应用绑定SLB。
常见问题
SAE如何支持高版本PHP部署?是否支持非PHP-FPM架构?
支持。您可以加入钉群(钉群号:32874633)联系产品技术专家咨询灰度版本。