如何将我的PHP应用程序部署到Google App Engine?

时间:2016-10-13 19:52:42

标签: php google-app-engine deployment

我一直在我的机器上本地开发PHP,然后通过FTP上传到Web服务器。我似乎无法理解如何将我的代码放到Google App Engine上。我经历了“hello world”PHP示例。按照他们的指示,它似乎最终工作正常,但我不知道如何将这些步骤应用到我自己的应用程序。我只是不明白使用Google Cloud SDK通过部署过程发生了什么。

任何人都可以提供一个简单的分步示例来解释如何完成这个看似简单的任务吗?

有没有办法使用好的'FTP?

谢谢。

2 个答案:

答案 0 :(得分:2)

App Engine与您在Web托管服务提供商处使用的不同。将应用程序部署到App Engine时,不会将文件推送到服务器上的远程文件夹。您有效地将它们打包到一个容器中,App Engine可以使用该容器为您的应用程序的许多实例提供服务,以便它可以处理自动扩展您的应用程序以及许多其他方面。

您的应用程序是通过app.yaml文件配置的,您可以在其中注册URL处理程序以及这些映射到各个PHP文件的方式。

您还将使用gcloud app deploy部署您的应用,而不是像FTP这样的工具。关于此的一个好处是,您可以同时部署多个版本的站点。如果最新版本“糟糕”,或者您可以进行流量分割以将一定比例的用户发送到一个版本而将其余用户发送到另一个版本,那么您可以做很酷的事情,例如将您的网站回滚到以前的版本。您可以将该功能用于应用程序的A / B测试方面,以查看哪个版本可以更好地与用户一起使用。

总体而言,App Engine确实需要从您的标准主机设置中进行一些转变,但它的功能更强大,而且您的管理负担更少。而对于小型网站,它有免费套餐,而不是花钱与标准托管服务提供商。

答案 1 :(得分:1)

如果您已经创建了.php文件,请启动google cloud shell,打开文本编辑器,在根目录下创建一个新文件夹,然后将.php文件上传到该文件夹​​中。上传您的.php文件后,请按照以下步骤操作:

  1. 在您的.php文件夹中为PHP创建app.yaml文件 文件已存储。
  2. 连接到您的Google Cloud Shell。
  3. 输入保存文件的文件夹。对于 例如,如果web是您创建的文件夹的名称,则 只需输入命令:cd web
  4. 现在是时候部署Web应用程序了,请输入 命令:gcloud app deploy,之后它将给您两个 选项y / n,然后输入y继续,或者输入n放弃部署过程。
  5. 部署后,您可以使用 命令:gcloud应用浏览

    将此代码粘贴到您的app.yaml文件中

    运行时:php55 api_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

这就是您在Google App Engine中部署PHP Web应用程序的方式。