Symfony 프레임워크 설치 및 설정


심포니에 오신 것을 환영합니다! 새로운 Symfony 프로젝트를 시작하는 것은 쉽고, 처음으로 작동하는 Symfony 프로그램을 몇 분 안에 구성할 수 있습니다.

새 프로그램을 더 쉽게 만들 수 있도록 Symfony는 설치 프로그램을 제공하며 이를 다운로드하는 것이 첫 번째 단계입니다.

Symfony 설치 프로그램 설치 ¶

Symfony 설치 프로그램을 사용하는 것은 새로운 Symfony 프로젝트를 생성하는 데 권장되는 유일한 방법입니다. 설치 프로그램은 단지 PHP 프로그램일 뿐입니다. 한 번만 설치하면 Symfony 프로그램을 무제한으로 만들 수 있습니다.

설치 프로그램에는 php5.4 이상이 필요합니다. 아직 레거시 php5.3을 사용하고 있다면 Symfony 설치 프로그램을 사용할 수 없습니다.

WAMP, XAMP 또는 MAMP와 같은 패키지 솔루션을 사용하는 경우 최신 버전의 PHP를 사용하는지 확인하세요. 명령줄에서 다음 명령을 사용하여 PHP 버전을 확인할 수 있습니다.

$ php --version

운영 체제에 따라 Symfony 설치 프로그램의 설치 방법도 다릅니다.

Linux 및 MAC OS X 시스템 ¶

명령줄 도구를 열고 다음 명령을 실행합니다:

$  sudo curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony
$  sudo chmod a+x /usr/local/bin/symfony

이렇게 하면 시스템에 전역 Symfony 명령이 생성됩니다.

Windows 시스템 ¶

Windows에서 다음 명령을 실행합니다:

c:\>php -r "readfile('http://symfony.com/installer');" > symfony

symfony 파일을 다운로드한 후 Symfony 프로젝트를 생성하려는 폴더로 파일을 이동합니다. 다음 명령은 다양한 설치를 안내할 수 있습니다. symfony文件,然后把这文件移动到你想创建Symfony项目的文件夹里,通过下述命令可引导各种安装:

c:\>move symfony c:\projects
c:\projects\> php symfony

创建Symfony程序 ¶

当Symfony安装器被设置好之后,使用全新命令new来创建Symfony项目:

# Linux, Mac OS X
$  symfony new my_project_name

# Windows
c:\> cd projects/
c:\projects\> php symfony new my_project_name


这命令创建了一个新的my_project_name

# use the most recent version in any Symfony branch 不同分支的最新版本
$symfony new my_project_name 2.8
$symfony new my_project_name 3.0

# use a specific Symfony version 指定版本
$symfony new my_project_name 2.7.3$  symfony new my_project_name 2.8.1
 
# use a beta or RC version (useful for testing new Symfony versions) 新版可用于测试
$symfony new my_project 3.0.0-BETA1$  symfony new my_project 2.7.0-RC1

Symfony 프로그램 만들기 ¶

Symfony 설치 프로그램이 설정된 후 새 명령 new를 사용하여 Symfony 프로젝트를 만듭니다:

$  symfony new my_project_name lts

이 명령은 Symfony 프로그램의 최신 안정 버전을 기반으로 하는 새 프로젝트를 포함하는 새로운 my_project_name 디렉토리를 생성합니다. 또한 설치 프로그램은 시스템이 Symfony 프로그램을 실행하기 위한 기술적 요구 사항을 갖추고 있는지 여부도 확인합니다. 충족되지 않으면 "변경해야 할 사항"에 대한 요구 사항 목록이 표시됩니다.

보안상의 이유로 모든 Symfony 버전은 배포 전에 디지털 서명됩니다. 프로그램에 통합된 버전 번호를 확인해야 하는 경우 이 문서의 단계를 따르세요. 🎜🎜🎜🎜🎜🎜설치 프로그램이 작동하지 않거나 아무것도 출력하지 않으면 시스템에 phar 확장이 설치되어 활성화되어 있는지 확인하세요. 🎜🎜🎜

특정 Symfony 버전에서 프로그램을 실행하세요 ¶

특정 Symfony 버전에서 프로젝트를 실행해야 하는 경우 두 번째 선택적 매개변수와 함께 new 명령을 사용하세요: new命令的同时附带第二个可选参数:

$  composer create-project symfony/framework-standard-edition my_project_name

安装器还支持一个特殊版本lts,即最新的长期维护版本Symfony LTS version

$  composer create-project symfony/framework-standard-edition my_project_name "3.0.*"

参考Symfony发布进程来深入理解为何有多种框架版本存在,以及哪种更适合你的项目。

不使用安装器来创建Symfony程序 ¶

如果你仍然在用php5.3,或者你因某种原因不能执行安装器,你可以基于composer来安装Symfony。

Composer是个依赖管理器,被现代php程序广泛使用,它也可用于安装Symfony框架。如果你不需要全局安装composer,请往下看。

全局安装Composer ¶

请参考全局安装Composer。

用Composer创建Symfony程序 

若你已安装过Composer,执行create-project命令来创建基于稳定版本的Symfony程序:

$  cd my_project_name/
$  php bin/console server:run

若需指定版本,提供版本号作为create-project的第二个参数

http://localhost:8000/config.php

如果你的网络连接很慢,你可能会认为Composer没有做任何事。这时,请在前述命令中添加-vvv旗标,以输出Composer正在做的每一件事的细节。

运行Symfony 

在开发时,Symfony利用了PHP内置的web服务器。因此,运行Symfony程序关乎项目所在目录并执行如下命令:

$  cd my_project_name/
$  composer update

然后,打开浏览器访问http://localhost:8000/

$  php bin/console security:check

설치 프로그램도 Symfony LTS 버전의 최신 장기 유지 관리 버전인 특수 버전 lts를 지원합니다

# Linux, Mac OS X
$ symfony demo

# Windows
c:\projects\> php symfony demo
Symfony 릴리스 프로세스를 참조하여 프레임워크 버전이 여러 개인 이유와 어떤 버전이 더 적합한지 깊이 이해하세요. 당신은 프로젝트.

설치 프로그램을 사용하지 않고 Symfony 프로그램 만들기 ¶

아직 php5.3을 사용하고 있거나 어떤 이유로 설치 프로그램을 실행할 수 없는 경우 작곡가 기반으로 Symfony를 설치할 수 있습니다.

Composer는 최신 PHP 프로그램에서 널리 사용되는 종속성 관리자로 Symfony 프레임워크를 설치하는 데에도 사용할 수 있습니다. Composer를 전역적으로 설치할 필요가 없다면 아래 내용을 읽어보세요.

전역적으로 Composer 설치 ¶전역적으로 Composer 설치를 참조하세요.

Composer를 사용하여 Symfony 프로그램 만들기
🎜Composer를 설치한 경우 create-project를 실행하세요. code >안정적인 버전을 기반으로 Symfony 프로그램을 생성하는 명령: 🎜
$  cd my_project_name/
$  composer install
🎜 버전을 지정해야 하는 경우 create-project🎜rrreee🎜
🎜 인터넷 연결이 느리다면 Composer가 아무 것도 하지 않고 있다고 생각할 수도 있습니다. 이때 Composer가 수행하는 모든 작업의 ​​세부 정보를 출력하려면 앞의 명령에 -vvv 플래그를 추가하세요. 🎜🎜🎜

Symfony 실행

🎜개발 중에 Symfony는 PHP에 내장된 웹 서버를 활용합니다. 따라서 Symfony 프로그램 실행은 프로젝트가 위치한 디렉터리에 따라 달라지며 다음 명령을 실행합니다. 🎜rrreee🎜 그런 다음 브라우저를 열고 http://localhost:8000/ 링크를 방문하여 Symfony 환영 페이지가 표시됩니다. 🎜🎜 🎜🎜🎜환영 페이지 외에도 빈 페이지와 오류 페이지가 표시될 수도 있습니다. 이는 일반적으로 디렉터리 권한 구성이 잘못되어 발생합니다. 운영 체제에 따라 여러 가지 해결 방법이 있습니다. 이에 대한 내용은 "권한 설정" 섹션에 설명되어 있습니다. 🎜🎜🎜🎜PHP 내장 서버는 php5.4 이상에만 존재합니다. 이전 버전의 PHP라면 운영체제의 웹 서버에 심포니 프로젝트를 위한 가상 호스트(🎜Virtual Host🎜)를 구성해야 합니다. 🎜🎜🎜

server:run 명령은 개발 단계에만 적합합니다. Apache 또는 Nginx와 같은 기존 웹 서버를 사용하는 경우 웹 서버 구성 문서를 참조하세요. server:run命令只适合于开发阶段。如果你使用传统的web服务器比如Apache或Nginx,参考配置web服务器这篇文章。

检查Symfony运行环境的配置 ¶

Symfony程序内置了一个服务器环境检查器,用来显示有关设置是否适合于Symfony。访问下面链接即可检查:

rrreee

如果显示有问题,在继续使用Symfony之前修复它们。

权限修复请参考设置或修复文件权限。

更新Symfony程序 ¶

至此,你已创建了可以立即投入开发的全功能Symfony项目。Symfony程序依赖的是大量外部类库,它们可以下载到vendor/目录下,并且被Composer进行排他管理。

频繁更新这些三方类库是最佳实践,可以防止bug和漏洞。执行Composer的update

Symfony 실행 환경 구성 확인 ¶

Symfony 프로그램에는 관련 설정이 Symfony에 적합한지 확인하는 서버 환경 검사기가 내장되어 있습니다. 아래 링크를 방문하여 확인해 보세요.

rrreee

디스플레이 문제가 있는 경우 Symfony를 계속 사용하기 전에 문제를 해결하세요.

권한 복구는 파일 권한 설정 또는 복구를 참고하세요.

Symfony 프로그램 업데이트 ¶

이 시점에서 즉시 개발에 투입할 수 있는 완전한 기능을 갖춘 Symfony 프로젝트를 만들었습니다. Symfony 프로그램은 vendor/ 디렉토리에 다운로드할 수 있고 Composer에서 독점적으로 관리할 수 있는 다수의 외부 클래스 라이브러리에 의존합니다.
🎜버그와 취약점을 방지하려면 이러한 타사 라이브러리를 자주 업데이트하는 것이 가장 좋습니다. Composer의 update 명령을 실행하여 한 번에 모두 업데이트하세요. 🎜rrreee🎜프로젝트의 복잡성에 따라 이 업데이트 방법을 완료하는 데 몇 분 정도 걸립니다. 🎜🎜🎜🎜Symfony는 또한 프로젝트 종속성에 알려진 주요 보안 취약점이 포함되어 있는지 확인하는 명령을 제공합니다. 🎜rrreee🎜 이러한 면역성을 가능한 한 빨리 업데이트하거나 교체할 수 있으므로 이 명령을 정기적으로 실행하는 것은 좋은 습관입니다. 낮은 종속성. 🎜🎜🎜

Symfony 데모 프로그램 설치 ¶

Symfony 데모 프로그램은 완벽하게 작동하며 권장되는 개발 접근 방식을 보여줍니다. 소스 코드에 광범위한 설명과 유용한 팁이 포함되어 있어 Symfony 초보자를 위한 학습 도구로 만들어졌습니다.

데모 프로그램을 다운로드하려면 시스템 어디에서나 Symfony 설치 프로그램의 demo 명령을 실행하세요. demo命令:

rrreee

一旦下载完毕,进入symfony_demo目录,并运行PHP内置web server,执行php bin/console server:run命令,然后访问浏览器的http://localhost:8000链接,即可开始使用Symfony演示程序。

安装Symfony分发包 ¶

Symfony项目的“分发包”,是指全功能的程序,包括了Symfony核心类库,一组必备的bundles,一套合理的目录结构,以及一些默认的配置。实际上,当你按之前的介绍创建了Symfony程序之后,你已经下载了由Symfony提供的默认分发包——被称为Symfony标准版(Symfony Standard Edition)

Symfony标准版,是目前最普及的分发,也是Symfony开发者的首选。不过,Symfony社区也提供了其他分发包供你选择使用。

  • Symfony CMF标准版是需要Symfony CMF的首选分发包,CMF是基于Symfony的开源项目,方便开发者向框架添加CMS(内容管理系统)功能。

  • Symfony REST Edition展示了如何构建一个RESTFul API程序,该分发整合了FOSRestBundle和其他几个关联bundles。

使用源码控制 ¶

如果你正使用Git这样的版本控制系统,你可以安全提交你的全部项目代码。这是因为Symfony程序中已经包含了一个专门准备给Symfony的.gitignore文件。

对于把你的项目代码托管到Git“究竟有多好”的介绍,参考如何创建和存储一个Symfony项目到Git中。

检查版本化的Symfony程序 ¶

当你使用Composer来管理程序的依赖时,推荐在提交代码到宝库时,忽略掉整个的vendor文件夹。这意味着当你从Git宝库中查看Symfony程序时,里面是没有vendor目录的,当然整个程序也是难以启动的。

若要令程序运行,检查Symfony程序,然后执行install这个Composer命令,下载和安装程序所需的全部依赖:

rrreee

为何Composer知道要安装哪个特殊的依赖?这是因为当Symfony程序被提交到宝库时,composer.jsoncomposer.lock文件也被提交。这两个文件告诉了Composer在安装Symfony时需要哪些依赖(及其特定版本)。

开始开发 ¶

现在你有了一个全功能的Symfony程序,可以开始开发了!你的分发包中包含了一些样例代码 - 查看程序中的README.mdrrreee

다운로드가 완료되면 symfony_demo 디렉터리로 이동하여 PHP has를 실행하세요. 내장 웹 서버를 사용하려면 php bin/console server:run 명령을 실행한 다음 브라우저의 http://localhost:8000 링크에 액세스하여 Symfony 사용을 시작하세요. 데모 프로그램 . 🎜🎜Symfony 배포 패키지 설치 ¶🎜🎜Symfony 프로젝트의 "배포 패키지"는 Symfony 핵심 클래스 라이브러리, 필요한 번들 세트, 합리적인 디렉토리 구조 및 일부 기본 구성을 포함한 모든 기능을 갖춘 프로그램을 의미합니다. 실제로 위에서 설명한 대로 Symfony 프로그램을 만들면 Symfony에서 제공하는 Symfony Standard Edition(Symfony Standard Edition)이라는 기본 배포 패키지를 다운로드하게 됩니다. 🎜🎜Symfony Standard Edition은 현재 가장 인기 있는 배포판이자 Symfony 개발자가 가장 먼저 선택하는 버전입니다. 그러나 Symfony 커뮤니티에서는 선택할 수 있는 다른 배포 패키지도 제공합니다. 🎜
  • 🎜Symfony CMF Standard Edition은 Symfony CMF가 필요한 기본 배포 패키지입니다. CMF는 개발자가 프레임워크에 CMS(콘텐츠 관리 시스템) 기능을 추가할 수 있는 Symfony 기반 오픈 소스 프로젝트입니다. 🎜
  • 🎜Symfony REST Edition은 RESTFul API 프로그램을 구축하는 방법을 보여줍니다. 이 배포판은 FOSRestBundle 및 기타 여러 관련 번들을 통합합니다. 🎜
🎜소스 코드 제어 사용 ¶🎜🎜Git와 같은 버전 제어 시스템을 사용하는 경우 모든 프로젝트 코드를 안전하게 제출할 수 있습니다. 이는 Symfony 프로그램에 Symfony를 위해 특별히 준비된 .gitignore 파일이 이미 포함되어 있기 때문입니다. 🎜🎜Git에서 프로젝트 코드를 호스팅하는 것이 "얼마나 좋은지"에 대한 소개는 Git에서 Symfony 프로젝트를 생성하고 저장하는 방법을 참조하세요. 🎜

버전이 지정된 Symfony 프로그램 확인 ¶

🎜 Composer를 사용하여 프로그램 종속성을 관리하는 경우 저장소에 코드를 제출할 때 전체 vendor 폴더를 무시하는 것이 좋습니다. 이는 Git 저장소에서 Symfony 프로그램을 볼 때 vendor 디렉터리가 없으며 물론 전체 프로그램을 시작하기 어렵다는 것을 의미합니다. 🎜🎜프로그램을 실행하려면 Symfony 프로그램을 확인한 다음 install Composer 명령을 실행하여 프로그램에 필요한 모든 종속성을 다운로드하고 설치하세요. 🎜rrreee🎜Composer가 어떤 특별한 종속성을 알고 있는지 이유 설치하다? Symfony 프로그램이 저장소에 제출되면 composer.jsoncomposer.lock 파일도 제출되기 때문입니다. 이 두 파일은 Symfony를 설치할 때 필요한 종속성(및 특정 버전)을 Composer에 알려줍니다. 🎜🎜개발 시작 ¶🎜🎜이제 완전한 기능을 갖춘 Symfony 프로그램이 있으므로 개발을 시작할 수 있습니다! 배포 패키지에는 몇 가지 샘플 코드가 포함되어 있습니다. 배포 패키지의 루틴에 대한 자세한 내용은 프로그램의 README.md 파일(메모장으로 열기)을 참조하세요. 🎜

Symfony를 처음 사용하는 경우 첫 번째 Symfony 페이지 만들기를 참조하세요. 여기에서 페이지 생성 방법, 구성 변경 방법, 새 프로그램에서 수행할 기타 작업을 배울 수 있습니다.