我一直在我的机器上本地开发PHP,然后通过FTP上传到web服务器。我似乎不知道如何把我的代码放到Google App Engine上。我浏览了"hello world"PHP示例。按照他们的指示,它似乎工作得很好,但我在如何将这些步骤应用到我自己的应用程序的损失。我根本不明白通过使用谷歌云SDK部署过程发生了什么。
谁能提供一个简单的一步一步的例子来解释这个看似简单的任务是如何完成的?
有办法使用好的老式FTP吗?
谢谢。
App Engine与您使用的web托管提供商不同。当您将应用程序部署到App Engine时,您不会将文件推送到服务器上的远程文件夹。你有效地将它们打包到一个容器中,App Engine可以使用这个容器来服务你的应用程序的许多实例,这样它就可以自动处理你的应用程序的伸缩和许多其他方面。
你的应用程序是通过app.yaml
文件配置的,你注册的东西,如你的URL处理程序,以及它们如何映射到各个PHP文件。
您还将使用gcloud app deploy
来部署您的应用程序,而不是像FTP这样的工具。这样做的一个好处是,您可以同时部署站点的多个版本。你可以用它做一些很酷的事情,比如如果最新版本"不好",你可以把你的网站回滚到以前的版本,或者你可以做流量分割,把一部分用户发送到一个版本,其余的用户发送到另一个版本。你可以使用该功能对应用程序进行A/B测试,看看哪个版本在用户中表现更好。
总的来说,App Engine确实需要从你的标准主机设置的思路上做出一点改变,但它更强大,而且你的管理负担更少。对于小型网站,它提供免费服务,而不是向标准的托管提供商付费。
如果你已经创建了你的。php文件,那么启动google cloud shell,打开文本编辑器,在根目录下创建一个新文件夹,并将你的。php文件上传到该文件夹。上传.php文件后,请遵循以下步骤:
- 为PHP创建app.yaml文件,在你的文件夹中
- 连接到你的google cloud shell。
- 进入您保存文件的文件夹。为例如,如果web是您创建的文件夹的名称只需输入命令:cd web
- 现在是部署web应用程序的时候了,输入命令:gcloud app deploy,之后它会给你两个选项y/n,然后输入y继续或n中止部署进程。
-
部署完成后,你可以使用命令:gcloud app browse
将此代码粘贴到app.yaml文件
运行时:php55api_version: 1
处理程序:
- url: /(.+'.(ico|jpg|png|gif))$
static_files: '1
upload: (.+'.(ico|jpg|png|gif))$
application_readable: true
- url: /(.+'.(htm|html|css|js))$
static_files: '1
upload: (.+'.(htm|html|css|js))$
application_readable: true
- url: /(.+'.php)$
script: '1
- url: /.*
script: index.php
,这就是你如何部署你的PHP web应用程序在谷歌应用引擎