部署到Heroku Cloudob直播app
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 2.5,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
部署到Heroku Cloudob直播app
这本循序渐进的烹饪书描述了如何将Symfony web应用程序部署到Heroku云平台。ob娱乐下载ob直播app其内容是基于原文赫鲁库出版。
设置
建立一个新的Heroku网站,首先注册Heroku或者用你的证件签到。然后下载并安装Heroku直到在您的本地计算机上。
你也可以查看在Heroku上开始使用PHP指南,以更熟悉在Heroku上使用PHP应用程序的细节。
准备申请材料
将Symfony应用程序ob娱乐下载部署到Heroku不需要对其代码进行任何更改,但需要对其配置进行一些小调整。
默认情况下,Symfony应用程ob娱乐下载序将登录到您的应用程序应用程序/日志/
目录中。这不是理想的,因为Heroku使用临时文件系统.在Heroku上,处理日志的最好方法是使用Logplex.将日志数据发送到Logplex的最佳方法是写入到STDERR
或STDOUT
.幸运的是,Symfob娱乐下载ony使用出色的Monolog库进行日志记录。因此,一个新的日志目标仅仅是对配置文件的更改。
打开应用程序/配置/ config_prod.yml
文件,找到独白/处理/嵌套
节(如果它还不存在,则创建它)并更改的值路径
从“% kernel.logs_dir % / % kernel.environment % . log”
来“php: / / stderr”
:
1 2 3 4 5 6 7 8
# app / config / config_prod.yml独白:#……处理程序:#……嵌套:#……路径:“php: / / stderr”
部署应用程序之后,运行Heroku原木——尾巴
在你的终端中保持来自Heroku的日志流是开放的。
在Heroku上创建一个新的应用程序
要创建一个新的Heroku应用程序,请使用CLI创建
命令:
1 2 3 4 5
$ heroku create创建强大的哈姆雷特-1981在组织heroku……完成,堆栈是雪松http://mighty-hamlet-1981.herokuapp.com/ | git@heroku.com:mighty-hamlet-1981.git远程heroku添加
现在您已经准备好部署应用程序了,这将在下一节中解释。
在Heroku上部署应用程序
要将应用程序部署到Heroku,必须首先创建一个Procfile
,它告诉Heroku使用哪个命令以正确的文档根目录启动web服务器。之后,您将确保您的Symfony应用程序运行ob娱乐下载刺激
环境,然后你就会准备好git推
到赫鲁库进行第一次部署!
创建Procfile
默认情况下,Heroku将启动一个Apache web服务器和PHP来服务应用程序。但是,有两种特殊情况适用于Symfony应用程序:ob娱乐下载
- 文档根目录在
web /
目录,而不是在应用程序的根目录; - 作曲家
bin-dir
,供应商的二进制文件(因此Heroku自己的引导脚本)被放置在那里bin /
,而不是默认值供应商/ bin
.
请注意
通常将供应商二进制文件安装到供应商/ bin
但有时(例如,当运行Symfony标准版项目时!),位置将不同。ob娱乐下载如果有疑问,你可以一直跑作曲家配置bin-dir
找出正确的位置。
创建一个名为Procfile
(没有任何扩展)在应用程序的根目录,并添加以下内容:
1
Web: bin/heroku-php-apache2 Web /
如果您喜欢在命令控制台上工作,请执行以下命令来创建Procfile
文件,并将其添加到存储库:
1 2 3 4 5
$回声web: bin/heroku-php-apache2 web/"> Procfile $ git添加。$ git commit -m“Apache和PHP的Procfile”[master 35075db为Apache和PHP 1个文件更改,1个插入(+)
设置刺激
环境
在部署过程中,Heroku运行编写器安装—无需开发
安装应用程序所需的所有依赖项。然而,典型的post-install-commands在composer.json
例如,安装资产或清除(或预热)缓存,使用Symfony的运行ob娱乐下载dev
默认为环境。
这显然不是你想要的——应用程序在“生产”中运行(即使你只是用它做实验,或者作为一个登台环境),所以任何构建步骤都应该使用相同的方法刺激
还有环境。
值得庆幸的是,这个问题的解决方案非常简单:Symfony将选择一个名为ob娱乐下载ob娱乐下载SYMFONY_ENV
如果没有显式设置其他内容,则使用该环境。Heroku揭露了一切配置var作为环境变量,你可以发出一个命令来为你的应用程序部署做好准备:
1
$ heroku配置集ob娱乐下载SYMFONY_ENV =刺激
向赫鲁库推进
接下来,是时候将应用程序部署到Heroku了。如果您是第一次这样做,您可能会看到如下消息:
1 2 3
主持人的真实性“heroku.com(50.19.85.132)”可以还不能确定。RSA密钥指纹为“8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad”。您确定要继续连接(是/否)?
在这种情况下,您需要输入确认是的
和打<输入>
钥匙——最好是在你验证RSA密钥指纹是否正确.
然后,执行以下命令部署应用程序:
12 34 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
初始化存储库,完成.计数对象:130,完成.Delta压缩使用最多4个线程。压缩对象:100% (107/107),完成.写入对象:100% (130/130),70.88 KiB | 0 bytes/s,完成.总130 (delta 17),重用0 (delta 0) -----> PHP应用程序检测到----->设置运行时环境…—PHP 5.5.12—Apache 2.4.9—Nginx 1.4.6 ----->安装PHP扩展:—opcache(自动;捆绑,用“ext-opcache.ini”) ----->安装依赖项…编译器版本64ac32fca9e64eb38e50abfadc6eb6f2d0470039生成优化的自动装载创建“应用程序/配置/ parameters.yml”清空缓存为带有调试的开发环境真正的使用硬拷贝选项安装资产为ob娱乐下载Symfony\Bundle\FrameworkBundle into web/bundles/framework安装资产为Acme\DemoBundle into web/bundles/acmedemo正在安装资产为Sensio\Bundle\DistributionBundle into web/bundles/sensiodistribution ----->构建运行时环境…----->发现进程类型Procfile声明类型-> web ----->压缩…完成, 61.5MB ----->启动…完成, v3 http://mighty-hamlet-1981.herokuapp.com/部署到Heroku到git@heroku.com:mighty-hamlet-1981.git *[新分支]master -> master
就是这样!如果您现在打开浏览器,可以手动将其指向URLheroku创建
给你,或通过使用Heroku Toolbelt,应用程序将响应:
1 2
$ heroku open打开《超级哈姆雷特》-1981…完成
您应该在浏览器中看到您的Symfony应用程序。ob娱乐下载