【问题标题】:How to deploy Laravel 4 Apps on Heroku?如何在 Heroku 上部署 Laravel 4 应用程序?
【发布时间】:2013-02-01 05:36:18
【问题描述】:

我知道 Heroku 支持 Cedar 堆栈中的许多不同环境,包括 PHP
Laravel 4 应用程序的典型文件夹结构如下:

app/
bootstrap/
public/
    packages/
    index.php
vendor/
composer.json
phpunit.xml

注意两件事:

  1. index.php文件不在根目录下,在public文件夹下。

  2. 有一个 composer.json 文件,Heroku 需要像 Ruby 应用程序中的 gem 一样自动安装所有项目依赖项。

所以我的问题是:
有没有办法在 Heroku 上部署这种应用程序?

任何帮助表示赞赏。

【问题讨论】:

  • 我也很想知道这一点。谢谢。
  • 是的,即使我很想知道这一点,如果有人得到答案,请在此处发布。
  • @Wing Lian 的 This buildpack 似乎运作良好。您需要更改您的 composer.json according to this tutorial 才能使其正常工作。

标签: php heroku laravel composer-php laravel-4


【解决方案1】:

可以在 Procfile 中指定应用程序的入口点,将其放在应用程序的根目录中。在您的情况下,内容将是:

web: vendor/bin/heroku-php-apache2 public/

https://devcenter.heroku.com/articles/getting-started-with-php#define-a-procfile

【讨论】:

    【解决方案2】:

    Heroku 最近发布了官方 PHP buildpack https://github.com/heroku/heroku-buildpack-php。它是新的,我最初遇到了一些麻烦。但它应该改进。它支持PHP或HHVM。

    【讨论】:

      【解决方案3】:

      您需要使用自定义 buildpack 来设置文档根目录并执行一个也集成了 composer 的脚本。在Heroku's Buidlpack 中,您需要更新 bin/compile 脚本来处理 composer 和 conf/httpd.conf 来设置文档根目录。此外,Heroku 的 buildpack 没有编译 mcrypt,因此 Laravel 4 无法使用该 buildpack。我在my branch of the buildpack 中包含了许多更新,包括 mcrypt、composer 和自定义文档根。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-24
        • 2017-07-27
        • 2017-05-26
        • 2020-07-03
        • 2013-08-05
        • 2016-11-25
        • 2020-07-14
        • 2011-12-08
        相关资源
        最近更新 更多