ajessup/laravel

Laravel 框架,经过轻量优化,适用于 Google App Engine 使用

v4.1.0 2013-12-11 14:17 UTC

This package is not auto-updated.

Last update: 2024-09-24 01:05:39 UTC


README

Latest Stable Version Total Downloads

优秀的 Laravel 4 框架,经过轻微调整,以在Google App Engine上无缝运行

使用说明

请确保您已下载并安装了最新的Google App Engine for PHP SDKComposer。然后从终端运行以下命令创建一个新项目:

composer create-project ajessup/laravel your-project-name -s dev

这将创建一个包含必要配置文件的自定义项目外壳。您可以使用 App Engine 启动器或包含在 App Engine SDK 中的dev_appserver.py命令启动项目。

dev_appserver.py ./your-project-name/

这将使您的项目在 App Engine 开发服务器上运行,包括所有必要的生产服务,例如模拟的 memcache。

现在您只需要构建您的应用程序!如果您需要灵感,请尝试官方的Laravel 快速入门

部署到 App Engine

要将应用程序部署到 Google App Engine,您必须首先

  • 在 Google Cloud Console 中创建一个项目,并启用计费。
  • 在项目中创建一个 Google Cloud Storage 存储桶,并将 App Engine 服务帐户设为所有者。此存储桶将用于存储对 Laravel 有用的文件,例如编译后的 blade 模板。

首次部署之前

  • 打开项目中的app.yaml文件,并将application:属性更改为与项目名称(也是 App Engine 应用程序的 ID)匹配。
  • 打开项目中的php.ini文件,将 ini 设置google_app_engine.allow_include_gs_buckets的值更改为上面创建的存储桶名称。在 App Engine 上运行时,Laravel 将默认使用此存储桶来写入存储。

要部署您的应用程序,您可以使用 App Engine 启动器或包含在 App Engine SDK 中的appcfg.py命令。

 appcfg.py ./your-project-name/

都做了哪些更改?

此 Laravel 框架分支经过轻微定制,以便与 Google App Engine 无缝配合。这包括以下从默认 Laravel 配置中的更改:

  • 会话和缓存存储默认为 memcached。App Engine 为所有应用程序提供免费的共享 memcache,如果需要,可以升级到专用 memcache。
  • Monolog 默认配置为将所有内容记录到 syslog()。记录到 syslog() 的 PHP 调用然后汇总并在 App Engine 的日志查看器中可用。
  • 明确定义了两个环境 - local(在开发服务器上运行时)和 appengine(在 App Engine 本身上运行时)。
  • local环境中运行时,Laravel 使用其正常的存储目录。在appengine环境中运行时,Laravel 将使用云存储桶。
  • 包含 App Engine 的默认app.yamlphp.ini配置文件。

官方文档

整个框架的文档可以在Laravel 网站上找到。

报告问题

除非您正在报告/修复与App Engine上的Laravel相关的问题,否则问题和拉取请求应提交到 laravel/framework 仓库。

致谢

除了出色的Laravel团队外,特别感谢 @amygdala@milesgioli 在查找和记录运行Laravel在Google App Engine所需的许多更改方面的贡献。

许可证

本Laravel框架的衍生版本是开源软件,遵循MIT许可证