ajessup / laravel
Laravel 框架,经过轻量优化,适用于 Google App Engine 使用
Requires
- laravel/framework: 4.1.*
This package is not auto-updated.
Last update: 2024-09-24 01:05:39 UTC
README
优秀的 Laravel 4 框架,经过轻微调整,以在Google App Engine上无缝运行
使用说明
请确保您已下载并安装了最新的Google App Engine for PHP SDK和Composer。然后从终端运行以下命令创建一个新项目:
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.yaml
和php.ini
配置文件。
官方文档
整个框架的文档可以在Laravel 网站上找到。
报告问题
除非您正在报告/修复与App Engine上的Laravel相关的问题,否则问题和拉取请求应提交到 laravel/framework 仓库。
致谢
除了出色的Laravel团队外,特别感谢 @amygdala 和 @milesgioli 在查找和记录运行Laravel在Google App Engine所需的许多更改方面的贡献。
许可证
本Laravel框架的衍生版本是开源软件,遵循MIT许可证。