亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Symfony2中文手冊(cè) / 安裝和設(shè)置Symfony框架

安裝和設(shè)置Symfony框架

歡迎來(lái)到Symfony!開(kāi)始一個(gè)全新的Symfony項(xiàng)目是容易的,你的第一個(gè)可正常運(yùn)作的Symfony程序能在幾分鐘之內(nèi)配置完成。

為了讓創(chuàng)建新程序更加簡(jiǎn)單,Symfony提供了一個(gè)安裝器,下載它就是你的第一步。

安裝Symfony Installer ?

使用Symfony Installer來(lái)創(chuàng)建全新Symfony項(xiàng)目是唯一被推薦的方式。安裝器就是個(gè)php程序,只需安裝一次,即可創(chuàng)建數(shù)量不限的Symfony程序。

安裝器需要php5.4或更高。如果你仍然在使用遺產(chǎn)級(jí)的php5.3,你不能使用Symfony安裝器。

如果你使用的是安裝環(huán)境的打包解決方案,比如WAMP,XAMP或MAMP,請(qǐng)檢查它們是否采用了PHP近期版本。你可以在命令行中使用下述命令來(lái)查看PHP版本:

$ php --version

根據(jù)操作系統(tǒng)的不同,Symfony安裝器的安裝方式也有所不同。

Linux和MAC OS X系統(tǒng) ?

打開(kāi)命令行工具執(zhí)行下述命令:

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

這將創(chuàng)建一個(gè)全局的Symfony命令到你的系統(tǒng)上。

Windows系統(tǒng) ?

在Windows上,執(zhí)行下述命令:

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

它會(huì)下載一個(gè)symfony文件,然后把這文件移動(dòng)到你想創(chuàng)建Symfony項(xiàng)目的文件夾里,通過(guò)下述命令可引導(dǎo)各種安裝:

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

創(chuàng)建Symfony程序 ?

當(dāng)Symfony安裝器被設(shè)置好之后,使用全新命令new來(lái)創(chuàng)建Symfony項(xiàng)目:

# Linux, Mac OS X
$  symfony new my_project_name

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


這命令創(chuàng)建了一個(gè)新的my_project_name目錄,里面是一個(gè)基于最新穩(wěn)定版Symfony程序的新項(xiàng)目。除此之外,安裝器還會(huì)檢查你的系統(tǒng)是否具備了執(zhí)行Symfony程序的技術(shù)需求。若不滿(mǎn)足,你會(huì)看到一個(gè)“哪些地方還需改變”的需求列表。

出于安全原因,所有Symfony版本都在分發(fā)之前進(jìn)行了數(shù)字簽名。如果你需要驗(yàn)證整合到程序中的版本號(hào),按照這篇文章中的步驟來(lái)操作。

如果安裝器不工作或是不輸出任何內(nèi)容,確保你的系統(tǒng)已經(jīng)安裝并開(kāi)啟了phar擴(kuò)展。

令你的程序運(yùn)行在特定Symfony版本 ?

萬(wàn)一你需要把項(xiàng)目運(yùn)行在特定的Symfony版本上,使用new命令的同時(shí)附帶第二個(gè)可選參數(shù):

# 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) 新版可用于測(cè)試
$symfony new my_project 3.0.0-BETA1$  symfony new my_project 2.7.0-RC1

安裝器還支持一個(gè)特殊版本lts,即最新的長(zhǎng)期維護(hù)版本Symfony LTS version

$  symfony new my_project_name lts

參考Symfony發(fā)布進(jìn)程來(lái)深入理解為何有多種框架版本存在,以及哪種更適合你的項(xiàng)目。

不使用安裝器來(lái)創(chuàng)建Symfony程序 ?

如果你仍然在用php5.3,或者你因某種原因不能執(zhí)行安裝器,你可以基于composer來(lái)安裝Symfony。

Composer是個(gè)依賴(lài)管理器,被現(xiàn)代php程序廣泛使用,它也可用于安裝Symfony框架。如果你不需要全局安裝composer,請(qǐng)往下看。

全局安裝Composer ?

請(qǐng)參考全局安裝Composer。

用Composer創(chuàng)建Symfony程序 ?

若你已安裝過(guò)Composer,執(zhí)行create-project命令來(lái)創(chuàng)建基于穩(wěn)定版本的Symfony程序:

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

若需指定版本,提供版本號(hào)作為create-project的第二個(gè)參數(shù)

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

如果你的網(wǎng)絡(luò)連接很慢,你可能會(huì)認(rèn)為Composer沒(méi)有做任何事。這時(shí),請(qǐng)?jiān)谇笆雒钪刑砑?code>-vvv旗標(biāo),以輸出Composer正在做的每一件事的細(xì)節(jié)。

運(yùn)行Symfony ?

在開(kāi)發(fā)時(shí),Symfony利用了PHP內(nèi)置的web服務(wù)器。因此,運(yùn)行Symfony程序關(guān)乎項(xiàng)目所在目錄并執(zhí)行如下命令:

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

然后,打開(kāi)瀏覽器訪問(wèn)http://localhost:8000/鏈接,即可看到Symfony歡迎頁(yè):

除了歡迎頁(yè),你還可能看到空白頁(yè)和錯(cuò)誤頁(yè)面,這通常是由于目錄權(quán)限的錯(cuò)誤配置造成的。根據(jù)你的操作系統(tǒng),有若干解決方案。相關(guān)內(nèi)容在“設(shè)置權(quán)限”小節(jié)中進(jìn)行了解釋。

PHP內(nèi)置服務(wù)器僅在php5.4和以上版本中存在。如果是老版PHP,你應(yīng)該在操作系統(tǒng)的web server上針對(duì)Symfony項(xiàng)目配置虛擬主機(jī)(Virtual Host)。

server:run命令只適合于開(kāi)發(fā)階段。如果你使用傳統(tǒng)的web服務(wù)器比如Apache或Nginx,參考配置web服務(wù)器這篇文章。

檢查Symfony運(yùn)行環(huán)境的配置 ?

Symfony程序內(nèi)置了一個(gè)服務(wù)器環(huán)境檢查器,用來(lái)顯示有關(guān)設(shè)置是否適合于Symfony。訪問(wèn)下面鏈接即可檢查:

http://localhost:8000/config.php

如果顯示有問(wèn)題,在繼續(xù)使用Symfony之前修復(fù)它們。

權(quán)限修復(fù)請(qǐng)參考設(shè)置或修復(fù)文件權(quán)限。

更新Symfony程序 ?

至此,你已創(chuàng)建了可以立即投入開(kāi)發(fā)的全功能Symfony項(xiàng)目。Symfony程序依賴(lài)的是大量外部類(lèi)庫(kù),它們可以下載到vendor/目錄下,并且被Composer進(jìn)行排他管理。

頻繁更新這些三方類(lèi)庫(kù)是最佳實(shí)踐,可以防止bug和漏洞。執(zhí)行Composer的update命令來(lái)一次性全部更新它們:

$  cd my_project_name/
$  composer update

根據(jù)項(xiàng)目復(fù)雜程度,這種更新方式需要耗費(fèi)若干分鐘才能完成。

Symfony還提供了一個(gè)用于檢查項(xiàng)目依賴(lài)是否包含了已知的重大安全漏洞的命令:

$  php bin/console security:check

定期執(zhí)行此命令是一個(gè)好習(xí)慣,因?yàn)榭梢员M可能快地更新或替換掉那些免疫低下的依賴(lài)。

安裝Symfony演示程序 ?

Symfony演示程序是全功能的,展示了推薦的開(kāi)發(fā)方式。它被當(dāng)作Symfony初學(xué)者的學(xué)習(xí)工具,源代碼中有大量注釋和有用的提示。

為了下載演示程序,在你的系統(tǒng)的任何位置,執(zhí)行Symfony安裝器的demo命令:

# Linux, Mac OS X
$ symfony demo

# Windows
c:\projects\> php symfony demo

一旦下載完畢,進(jìn)入symfony_demo目錄,并運(yùn)行PHP內(nèi)置web server,執(zhí)行php bin/console server:run命令,然后訪問(wèn)瀏覽器的http://localhost:8000鏈接,即可開(kāi)始使用Symfony演示程序。

安裝Symfony分發(fā)包 ?

Symfony項(xiàng)目的“分發(fā)包”,是指全功能的程序,包括了Symfony核心類(lèi)庫(kù),一組必備的bundles,一套合理的目錄結(jié)構(gòu),以及一些默認(rèn)的配置。實(shí)際上,當(dāng)你按之前的介紹創(chuàng)建了Symfony程序之后,你已經(jīng)下載了由Symfony提供的默認(rèn)分發(fā)包——被稱(chēng)為Symfony標(biāo)準(zhǔn)版(Symfony Standard Edition)。

Symfony標(biāo)準(zhǔn)版,是目前最普及的分發(fā),也是Symfony開(kāi)發(fā)者的首選。不過(guò),Symfony社區(qū)也提供了其他分發(fā)包供你選擇使用。

  • Symfony CMF標(biāo)準(zhǔn)版是需要Symfony CMF的首選分發(fā)包,CMF是基于Symfony的開(kāi)源項(xiàng)目,方便開(kāi)發(fā)者向框架添加CMS(內(nèi)容管理系統(tǒng))功能。

  • Symfony REST Edition展示了如何構(gòu)建一個(gè)RESTFul API程序,該分發(fā)整合了FOSRestBundle和其他幾個(gè)關(guān)聯(lián)bundles。

使用源碼控制 ?

如果你正使用Git這樣的版本控制系統(tǒng),你可以安全提交你的全部項(xiàng)目代碼。這是因?yàn)镾ymfony程序中已經(jīng)包含了一個(gè)專(zhuān)門(mén)準(zhǔn)備給Symfony的.gitignore文件。

對(duì)于把你的項(xiàng)目代碼托管到Git“究竟有多好”的介紹,參考如何創(chuàng)建和存儲(chǔ)一個(gè)Symfony項(xiàng)目到Git中。

檢查版本化的Symfony程序 ?

當(dāng)你使用Composer來(lái)管理程序的依賴(lài)時(shí),推薦在提交代碼到寶庫(kù)時(shí),忽略掉整個(gè)的vendor文件夾。這意味著當(dāng)你從Git寶庫(kù)中查看Symfony程序時(shí),里面是沒(méi)有vendor目錄的,當(dāng)然整個(gè)程序也是難以啟動(dòng)的。

若要令程序運(yùn)行,檢查Symfony程序,然后執(zhí)行install這個(gè)Composer命令,下載和安裝程序所需的全部依賴(lài):

$  cd my_project_name/
$  composer install

為何Composer知道要安裝哪個(gè)特殊的依賴(lài)?這是因?yàn)楫?dāng)Symfony程序被提交到寶庫(kù)時(shí),composer.jsoncomposer.lock文件也被提交。這兩個(gè)文件告訴了Composer在安裝Symfony時(shí)需要哪些依賴(lài)(及其特定版本)。

開(kāi)始開(kāi)發(fā) ?

現(xiàn)在你有了一個(gè)全功能的Symfony程序,可以開(kāi)始開(kāi)發(fā)了!你的分發(fā)包中包含了一些樣例代碼 - 查看程序中的README.md文件(用記事本打開(kāi)),可以了解該分發(fā)包中的例程細(xì)節(jié)。

如果你對(duì)Symfony還較為陌生,參考創(chuàng)建你的第一個(gè)Symfony頁(yè)面,這里你可以學(xué)習(xí)到如何創(chuàng)建頁(yè)面、改變配置,以及任何你想在新程序中做的事。