第3步:从零到生产

5.2版本
保持 不明意
5.0

从零到生产

我喜欢快点。我希望我们的小项目尽可能快地生活。像现在。在生产中。我们还没有开发任何东西,我们将首先部署一个漂亮而简单的“在建设”页面。你会喜欢的!

花一段时间试图在互联网上找到理想,古老的古老的古老的塑造和动画“在建设中”。这是唯一的那个我要使用:

../_images/under-construction.gif.

我告诉过你,这将是很有趣。

初始化项目

创建一个新的symfonyob娱乐下载项目ob娱乐下载我们之前已安装过的CLI工具:

1 2
$ ob娱乐下载symfony新留言--version=5..2 $光盘留言簿

这个命令是一个薄的包装器作曲家这缓解了Symfony项目的创建。ob娱乐下载它使用A.项目骨架包括裸露的最小依赖项;几乎任何ob娱乐下载项目所需的Symfony组件:控制台工具和创建Web应用程序所需的HTTP抽象。

如果您看看骨架的GitHub存储库,您会注意到它几乎是空的。只是A.composer.json.文件。但是留言簿目录充满了文件。这怎么可能呢?答案在于ob娱乐下载Symfony / Flex.包裹。ob娱乐下载Symfony Flex是一个Composer插件,可挂钩安装过程。当它检测到它有一个包的包食谱,它执行它。

Symfony配方的主要入口点是一个清单文件,描述了ob娱乐下载在Symfony应用程序中自动注册包的操作。您永远不必读取一个README文件以安装具有symfony的包。ob娱乐下载自动化是Symfony的一个关键特征。ob娱乐下载

由于Git安装在我们的机器上,ob娱乐下载新的还为我们创建了一个Git存储库,它添加了第一个提交。

看目录结构:

1 2 3 4 5 6 7 8 9
├──ob娱乐下载

垃圾箱/目录包含主CLI入口点:安慰。你会一直使用它。

配置/目录由一组默认和明智的配置文件组成。每个包一个文件。你几乎没有改变它们,相信默认值几乎总是一个好主意。

上市/目录是Web根目录,以及index.php.脚本是所有动态HTTP资源的主要入口点。

SRC /目录托管您将写入的所有代码;这就是你大部分时间的地方。默认情况下,此目录下的所有类都使用应用程序PHP命名空间。这是你的家。你的代码。您的域逻辑。ob娱乐下载Symfony在那里说的很少。

var /目录包含应用程序在运行时生成的缓存,日志和文件。你可以独自留下它。它是唯一需要在生产中可行的目录。

小贩/目录包含作曲家安装的所有包,包括Symfony本身。ob娱乐下载这是我们的秘密武器更富有成效。让我们不要重新发明轮子。您将依靠现有的图书馆来完成努力工作。该目录由Composer管理。永远不要碰它。

这就是你现在所需的一切。

创建一些公共资源

任何内容上市/通过浏览器访问。例如,如果移动动画GIF文件(名称它建设中.GIF.)进入一个新的公共/图像/目录,它将以网址提供https://localhost/images/under-construction.gif.

下载我的GIF图像在这里:

1 2
$ mkdir public / images / $ php -r“复制('http://clipartmag.com/images/website-under-construction -6.gif','公共/图像/ uchional.gif');”

启动本地Web服务器

ob娱乐下载CLI附带一个用于开发工作的Web服务器。如果我告诉你它与symfony很好地工作,你不会感到惊讶。ob娱乐下载不要在生产中使用它。

从项目目录中,在后台启动Web服务器(-D.旗帜):

1
$ ob娱乐下载symfony服务器:start -d

服务器从第一个可用端口启动,从8000开始。作为快捷方式,在CLI浏览器中打开网站:

1
$ ob娱乐下载symfony开放:本地

您最喜欢的浏览器应采取焦点并打开一个显示类似于以下内容的新选项卡:

小费

解决问题,运行ob娱乐下载服务器:日志;它从Web服务器,PHP和应用程序中尾笔。

浏览到/ inmages/under-construction.gif.。它看起来像这样吗?

使满意?让我们提交我们的工作:

1 2
$ git添加公钥/图像$ git commit -m'加入施工图像'

添加一个favicon.

为了避免在日志中的404 HTTP错误被“垃圾邮件”,因为浏览器请求的缺失的Favicon,让我们立即添加一个:

1 2 3.
$ php -r.“复制('https://syob娱乐下载mfony.com/favicon.ico','public / favicon.ico');”$ git添加public / $ git commit -m'添加一个favicon'

准备生产

如何将工作部署到生产呢?我知道,我们甚至没有适当的HTML页面才欢迎我们的用户。但能够看到生产服务器上的小“正在建设”形象将是一个很好的前进。你知道座右铭:提前和经常部署

您可以在支持PHP的任何提供商上托管此应用程序......这意味着几乎所有托管提供商都在那里。请查看一些事情:我们想要最新的PHP版本以及托管服务等数据库,队列等的可能性。

我已经做出了自己的选择,它将是ob娱乐下载sob直播appymfonycloud.。它提供了我们所需要的一切,它有助于为Symfony的发展提供资金。ob娱乐下载

ob娱乐下载CLI为SymfonyCloud提供了支持。ob娱乐下载ob直播app让我们初始化一个symfonyclouob娱乐下载d项目:ob直播app

1
$ ob娱乐下载symfony项目:init

此命令创建SymfonyCloud需要的一些文件,即ob娱乐下载ob直播app.ob娱乐下载symfony / services.yaml..ob娱乐下载symfony / routes.yaml., 和.ob娱乐下载syob直播appmfony.cloud.yaml.

将它们添加到git和commit:

1 2
$ git添加。$ git commit -m“添加syob娱乐下载mob直播appfonycloud配置”

笔记

使用通用和危险Git.添加工作正常.gitignore.已生成文件,它会自动排除我们不想提交的所有文件。

去生产

部署时间?

创建一个新的symfonyob娱乐下载cob直播apploud项目:

1
$ ob娱乐下载symfony项目:create --title=“留言簿”- 计划=发展

此命令有很多:

  • 第一次启动此命令,如果未完成,请使用SymfonyConnect凭据进行身份验证。ob娱乐下载
  • 它在SymfonyCloud上规定了一个新项目(你得到7天ob娱乐下载ob直播app免费关于任何新的开发项目)。

然后,部署:

1
$ ob娱乐下载symfony部署

通过按下git存储库部署代码。在命令结束时,项目将具有您可以用于访问它的特定域名。

检查一切效果正常:

1
$ ob娱乐下载symfony开放:遥控器

你应该得到404,但浏览到/ inmages/under-construction.gif.应该透露我们的工作。

请注意,您不会在symfonycloud上获取美丽的默认symfony页面。ob娱乐下载ob直播app为什么?您将尽快学习Symfony支持多个环境,Symfoob娱乐下载nyCloud自动部署生产环境中的代码。ob直播app

小费

如果要删除SymfonyCloud上的项目,请使用ob娱乐下载ob直播app项目:删除命令。


这项工作包括代码样本,是在a下获得的许可Creative Commons By-NC-SA 4.0执照。