安装和设置Symfony框架

要创建新的Symfony应用程序, 首先确保使用的是PHP7.1 或更高版本并且已经安装Componser. 如果未安装, 请首先在系统上全局安装Componser. 如果你想使用虚拟机(VM), 请查看Homesteadphp常用函数集合

通过运行以下命令来创建新项目:


$ composer create-project symfony/website-skeleton my-project

这将创建一个新的 my-project 目录, 下载所需的依赖,甚至生成你所需的基本目录和文件. 换句话说,你的新应用已经准备就绪!

website-skeleton 针对传统Web应用程序进行了优化. 如果要构建微服务, 控制台应用程序或API, 请考虑使用更简单的骨架项目skeleton:


$ composer create-project symfony/skeleton my-project
$ cd my-project
$ composer require symfony/web-server-bundle --dev

运行Symfony应用程序

在生产环境, 你应该使用像Nginx, Apache这样成熟的Web服务器. 但对于开发环境来说, 使用Symfony PHP Web服务器会更加容易.

进入新建的项目目录并启动服务:


$ cd my-project
$ php bin/console server:run

打开浏览器并访问 http://localhost:8000/ . 如果一切正常, 你将会看到欢迎页面. 稍后, 当你完成工作后, 在终端中按下 Ctrl + c 停止服务.

如果在运行Symfony时遇到任何问题, 你的系统可能缺少一些必要技术要求. 使用Symfony Requirements Checker工具确保你的系统已经设置.

如果你正在使用VM, 则可能需要将服务器绑定到所有IP地址:


$ php bin/console server:start 0.0.0.0:8000

项目存储到git

将你的项目存储在Github, Gitlab和Bitbucket等服务中是非常容易的! 用Git初始化一个新仓库后你就可以将提交推送到远端了:


$ git init
$ git add .
$ git commit -m "Initial commit"

在你的项目中已经存在了一个合理的 .gitignore 文件. 当你安装更多包时, Flex工具将在适时向该文件添加更多内容.

设置现有的Symfony项目

如果您正在使用现有的Symfony应用程序,那么您只需要做一些事情来完成项目设置。 假设你的团队使用Git,你可以使用以下命令设置项目:


// clone the project to download its contents
$ cd projects/
$ git clone ... // make Composer install the project's dependencies into vendor/
$ cd my-project/
$ composer install

您可能还需要自定义 .env 并执行一些其他项目特定任务(例如,创建数据库).

检查安全漏洞

Symfony提供了一个名为 Security Checker 的实用工具来检查你项目的依赖项是否包含任何已知的安全漏洞. 运行以下命令将其安装到应用程序中:


$ cd my-project/
$ composer require sensiolabs/security-checker --dev

从现在开始, 只要您在应用程序中安装或更新任何依赖项, 就会自动运行此实用程序. 如果依赖项包含漏洞, 您将看到明确的消息.

Symfony Demo 应用程序

Symfony Demo 应用程序是一个功能齐全的应用程序, 展示了开发Symfony应用程序的推荐方法. 是Symfony新手的一个很好的学习工具, 它的代码包含大量的注释和有帮助的记录.

要查看代码并在本地安装, 请参阅 symfony/symfony-demo

开始 Coding!

有了你之前的设置, 是时候在Symfony中创建你的第一个页面了.

原文地址:https://segmentfault.com/a/1190000016861590

Symfony4中文文档: 安装和设置Symfony框架的更多相关文章

  1. Nginx中文文档-安装 Nginx

    nginx可以使用各平台的默认包来安装,本文是介绍使用源码编译安装,包括具体的编译参数信息. 正式开始前,编译环境gcc g++ 开发库之类的需要提前装好,这里默认你已经装好. ububtu平台编译环 ...

  2. 1、pytest中文文档--安装和入门

    目录 安装和入门 安装pytest 创建你的第一个测试用例 执行多个测试用例 检查代码是否触发一个指定的异常 在一个类中组织多个测试用例 申请一个唯一的临时目录用于功能测试 安装和入门 Python版 ...

  3. 【scikit-learn 0.19 中文文档 】安装 scikit-learn | ApacheCN

    中文文档: http://sklearn.apachecn.org/cn/0.19.0/tutorial/basic/tutorial.html 英文文档: http://sklearn.apache ...

  4. Keras官方中文文档:Keras安装和配置指南(Windows)

    这里需要说明一下,笔者不建议在Windows环境下进行深度学习的研究,一方面是因为Windows所对应的框架搭建的依赖过多,社区设定不完全:另一方面,Linux系统下对显卡支持.内存释放以及存储空间调 ...

  5. IDEA设置显示中文文档API方法说明

    首先,我们从网上下载好对应的java最新的中文api文档,chm格式的 chm其实相当于一个压缩包,里面有许多html文件 让IDEA显示中文文档,其实原理就是是让IDEA把java的api的对应ht ...

  6. IdentityServer4 中文文档 -8- (快速入门)设置和概览

    IdentityServer4 中文文档 -8- (快速入门)设置和概览 原文:http://docs.identityserver.io/en/release/quickstarts/0_overv ...

  7. debian8上安装pyspider - pyspider中文文档 - pyspider中文网

    debian8上安装pyspider - pyspider中文文档 - pyspider中文网   #apt-get install python python-dev python-distribu ...

  8. Spring中文文档

    前一段时间翻译了Jetty的一部分文档,感觉对阅读英文没有大的提高(*^-^*),毕竟Jetty的受众面还是比较小的,而且翻译过程中发现Jetty的文档写的不是很好,所以呢翻译的兴趣慢慢就不大了,只能 ...

  9. ORCHARD中文文档(翻译)

    众所周知,Orchard是.net领域最好的开源CMS之一,他使用了微软最先进的技术,有一群先进理念的支持者,但是,所有的事情在国内总得加个但是,Orchard也不例外,中文资料相对比较少,官网提供的 ...

随机推荐

  1. Codeforces 986A. Fair(对物品bfs暴力求解)

    解题思路: 1.对物品i bfs,更新每个小镇j获得每个物品i的最短距离. 2.时间复杂度o(n*k),满足2s的要求. 代码: #include <iostream> #include ...

  2. 【参考】JDBC执行存储过程的四种情况

    [1].只有输入IN参数,没有输出OUT参数 [2].既有输入IN参数,也有输出OUT参数,输出是简单值(非列表) [3].既有输入IN参数,也有输出OUT参数,输出是列表 [4].输入输出参数是同一 ...

  3. STM8S103之ADC

    如何快速了解ADC,查看Reference manual中ADC registers章节,初步了解到ADC ADC buffer register和ADC data register Analog W ...

  4. css3 -阻止元素成为鼠标事件目标 pointer-events

    pointer-events:auto|none 其中pointer-events:none:元素永远不会成为鼠标事件的target. <!DOCTYPE html> <html l ...

  5. (转)JVM内存管理-----堆内存

    来源:http://blog.csdn.net/yu422560654/article/details/7952613 Heap堆内存理解 一个JVM实例只有一个堆内存,堆内存的大小是可以调节的.类加 ...

  6. 路飞学城Python-Day10

    [37.函数-命名空间]命名空间又称为name space,顾名思义就是存放名字的地方,存什么名字呢?举例说明,若变量 x = 1,存放于内存中,那名字x存放在哪里呢?名称空间正式存放名字x和1绑定关 ...

  7. [Vijos P1369]难解的问题

    题目大意:给你一个序列,叫你求最长上升子序列长度,但必须包含第k项. 解题思路:我们把k左边的比a[k]大的数去掉,k右边的比k小的数去掉,就可以保证选到a[k]了(因为左边的数小于a[k],而a[k ...

  8. 洛谷P5160 WD与循环

    我们看这段代码 int cnt = 0; for (int a_1 = 0; a_1 <= m; a_1++) { for (int a_2 = 0; a_1 + a_2 <= m; a_ ...

  9. SpringBoot实战(一)HelloWorld

    一:环境准备: JDK:1.8版本 Maven:3.5版本(如果觉得下载速度慢,可以切换为阿里镜向地址) Intellij:2018.2.1版本 二:实际操作: 1.在Intellij中创建一个新的S ...

  10. LaTeX 写算法伪码

    本系列文章由 @YhL_Leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50054953 LaTeX写算法伪码,需 ...