第三章——运行Symfonyob娱乐下载
您已经了解了在之前的章节,symfony框架是用PHP编写的一组文件。ob娱乐下载syob娱乐下载mfony项目使用这些文件,所以安装symfony意味着获得这些文件,使其可用于这个项目。
ob娱乐下载Symfony至少需要PHP 5.2.4。确保您已经安装了它,打开一个命令行,输入这个命令:
php - v php 5.3.1美元(cli)(建:2010年1月6 20:54:10)版权(c) 1997 - 2009如果php Zend引擎组2.3.0,版权(c) 1998 - 2009 Zend技术
如果5.2.4或更高版本号,那么你准备好安装,如本章所述。
先决条件
在安装symfony之前,你需要检查ob娱乐下载你的电脑都安装并正确配置。花时间认真阅读这一章,遵循所有所需的步骤来检查你的配置,因为它可能进一步节省你的一天。
第三方软件
首先,你需要检查你的电脑有一个web开发友好的工作环境。至少,你需要一个web服务器(例如Apache),数据库引擎(MySQL、PostgreSQL、SQLite、或任何PDO兼容数据库引擎),PHP 5.2.4或更高版本。
命令行接口
symfob娱乐下载ony框架来与一个命令行工具,自动绑定很多工作给你。如果你是一个类unix操作系统的用户,你会感觉得心应手。如果你运行Windows系统,它也能工作的很好,但你将只需要输入一些命令cmd
提示。
请注意
Unix shell命令在Windows环境中可以派上用场。如果你想使用工具焦油
,gzip
或grep
在Windows上,您可以安装Cygwin。冒险也喜欢微软的尝试Windows服务Unix。
PHP配置
当PHP配置可以改变从一个系统转移到另一个,甚至在不同的Linux发行版本,您需要检查您的PHP配置满足symfony的最低要求。ob娱乐下载
首先,确保您已经安装了PHP 5.2.4作为最低使用phpinfo ()
内置函数或通过运行php - v
在命令行上。请注意,在一些配置,您可能安装了两个不同的PHP版本:一个用于命令行,另一个用于网络。
然后,下载symfony的配置检查脚本ob娱乐下载在以下网址:
http://sf-to.org/1.4/check.php
保存您当前的web根目录下的脚本的地方。
从命令行启动配置检查脚本:
php check_configuration.php美元
如果有问题与PHP配置,该命令的输出会给你提示修复以及如何解决它。
你也应该从浏览器执行检查和修复它可能发现的问题。这是因为PHP可以有一个不同的php . ini
配置文件为这两个环境中,有不同的设置。
请注意
别忘了把文件从您的web根目录。
请注意
如果你的目标是尝试symfony几个小时,您可以ob娱乐下载安装symfony沙箱描述在这一章的结束。如果你想要引导一个真实世界的项目或者想了解更多关于symfony,继续阅读。ob娱乐下载
ob娱乐下载Symfony的安装
初始化项目目录
在安装symfony之前,您首先需要ob娱乐下载创建一个目录,将主机与你的项目相关的所有文件:
mkdir - p /home/sfproject cd /home/sfproject美元
或在Windows上:
c: \ > mkdir c: \开发\ sfproject c: \ > cd c: \开发\ sfproject
请注意
Windows用户建议运行symfony和设置他们的新项目的路径不ob娱乐下载包含空格。避免使用文档和设置
目录,包括在任何地方我的文档
。
提示
如果您创建web根目录下的symfoob娱乐下载ny项目目录,您不需要配置您的web服务器。当然,对于生产环境,我们强烈建议您配置您的web服务器的web服务器配置部分。
选择Symfony的版本ob娱乐下载
现在,您需要安装symfony。ob娱乐下载因为symfoob娱乐下载ny框架有几个稳定的版本中,您需要选择一个你想安装通过阅读安装页面在symfonob娱乐下载y的网站。
选择安装Symfony的位ob娱乐下载置
你可以在你的机器上安装symfoob娱乐下载ny全球,或者嵌入到你的每一个项目。后者是推荐的方法作为项目将完全独立于彼此,ugrad你本地安装symfony意外不会打破你的一些项目。ob娱乐下载这也意味着你将能够有项目使用symfony的不同版本,并升级一个你们认为合适的时间。ob娱乐下载
作为一项最佳实践,很多人安装symfony框架文件ob娱乐下载lib /供应商
项目目录。首先,创建这个目录:
mkdir - p lib /供应商美元
安装Symfonyob娱乐下载
安装从存档
安装symfony的最简单方法是下载的档案版本symfob娱乐下载ony的你选择的网站。去你刚刚选择的版本的安装页面,symfonyob娱乐下载1.4例如。
在“源下载”一节,你会发现存档. tgz
或在. zip
格式。下载档案,把它在刚创建的lib /供应商/
目录,un-archive,重命名目录ob娱乐下载
:
cd lib /供应商美元焦油zxpf symfonyob娱乐下载-1.4.0。tgz mv syob娱乐下载mfony-1.4.0 symfony rm symfony-1.4.0.tgz美元
在Windows下,解开压缩文件可以通过使用Windows资源管理器。重命名目录之后ob娱乐下载
,应该有一个目录结构相似c: \开发\ sfproject \ lib \供应商ob娱乐下载\ symfony
。
安装从Subversion(推荐)
如果您的项目使用Subversion,它是更好的使用svn:外部
财产symfony嵌入到您的项目中ob娱乐下载lib /供应商/
目录:
svn pe svn:美元/ lib /外部供应商
如果一切顺利,这个命令将运行您最喜欢的编辑器来给你配置Subversion外部来源的机会。
提示
在Windows上,您可以使用工具TortoiseSVN做的一切,而不需要使用控制台。
如果你是保守的,把你的项目到一个特定的版本(subversion标记):
ob娱乐下载symfony http://svn.symfony-project.com/tags/RELEASE_1_4_0
每当一个新版本出来(就像在symfony宣布ob娱乐下载博客),您将需要修改URL到新版本。
如果你想去高新技术路线,使用1.4分支:
ob娱乐下载symfony http://svn.symfony-project.com/branches/1.4/
使用分支使您的项目受益于当你运行一个自动bug修复svn更新
。
安装验证
现在安装symfoob娱乐下载ny,检查所有正在使用symfony命令行显示symfony版本(注意V
):
$ cd . . / . .美元php lib /供应商/ sob娱乐下载ymfony / data / bin / symfony - v
在Windows上:
c: \ > cd . . \ . .c: \ php自由> \ bin \ ob娱乐下载\供应商\ symfony \数据symfony - v
您已经创建了您的项目(下图)后,运行该命令还显示symfony安装目录的路径,这是存储在ob娱乐下载配置/ ProjectConfiguration.class.php
。
如果当你检查这个,symfony的路径是一个绝对的(默认情况下不应该如果ob娱乐下载你遵循以下指令),改变它所以它读起来像之前更好的可移植性:
/ /配置/ ProjectConfiguration.class.phprequire_once目录名(__FILE__)。“/ . . / lib /供应ob娱乐下载商/ symfony / lib /自动装载/ sfCoreAutoload.class.php”;
这样,你可以在任何地方移动项目目录在您的机器上或另一个,它只会工作。
提示
如果你是好奇这个命令行工具可以帮你做什么,类型ob娱乐下载
列出可用的选项和任务:
美元php lib /供应商/ sob娱乐下载ymfony / data / bin / symfony
在Windows上:
c: \ php自由> \供应商\ syob娱乐下载mfony \ data \ bin \ symfony
symfob娱乐下载ony命令行是开发人员的最好的朋友。它提供了很多工具,提高生产率等日常活动清理缓存,生成代码,等等。
项目设置
在syob娱乐下载mfony中,应用程序重新集结成共享相同的数据模型项目。对于大多数项目,您将有两个不同的应用程序:一个前端和后端。
项目创建
从sfproject /
目录,运行symfonyob娱乐下载生成:项目
任务来创建symfony项目:ob娱乐下载
美元php lib /供应商/ sob娱乐下载ymfony / data / bin / symfony生成:项目PROJECT_NAME
在Windows上:
c: \ php自由> \ bin \ ob娱乐下载\供应商\ symfony \数据symfony生成:项目PROJECT_NAME
的生成:项目
任务生成默认的目录结构和文件需要一个symfony项目。ob娱乐下载
请注意
为什么symfonob娱乐下载y生成很多文件?使用一个完整的框架的主要好处之一是标准化发展。由于symfony的ob娱乐下载默认文件和目录结构,任何开发人员与一些symfony的知识可以在任何symfony项目的维护。在几分钟内,他将能够深入代码,修复bug,并添加新特性。
的生成:项目
任务也创建了一个ob娱乐下载
快捷方式在项目根目录缩短字符数你要写一个任务运行时。
所以,从现在开始,而不是使用完全限定路径symfony项目,您可以使用ob娱乐下载ob娱乐下载
快捷方式。
配置数据库
symfob娱乐下载ony框架支持PDO支持数据库(MySQL、PostgreSQL、SQLite、甲骨文、该软件,…)的盒子。PDO, symfony和两个ob娱乐下载ORM工具捆绑在一起:推动和教义。
创建一个新项目时,原则是默认启用。配置数据库使用的原则是简单使用配置:数据库
任务:
美元php ob娱乐下载symfony的配置:数据库“mysql:主机= localhost; dbname = dbname“根mYsEcret
的配置:数据库
任务有三个参数:PDO DSN、用户名和密码来访问数据库。如果你不需要密码访问数据库开发服务器,只是省略第三个参数。
提示
如果你想使用推动而不是教条,添加——orm =推动
当创建的项目生成:项目
的任务。如果你不想使用一个ORM,只是通过——orm =没有
。
应用程序创建
现在,通过运行创建前端应用程序生成:应用程序
任务:
美元php ob娱乐下载symfony生成:应用程序前端
提示
因为symfony快捷方ob娱乐下载式文件是可执行的,Unix用户可以替换出现的所有的php ob娱乐下载symfony
“通过”/ ob娱乐下载symfony。
“从现在开始。
在Windows上你可以复制的ob娱乐下载symfony.bat
文件到您的项目并使用的ob娱乐下载
“而不是”php ob娱乐下载symfony
”:
c: \ lib \ >副本供应商\ syob娱乐下载mfony \ data \ bin \ symfony。蝙蝠。
基于给定的应用程序名称作为论点,生成:应用程序
任务创建默认的目录结构下所需的应用程序应用程序/前端/
目录中。
目录结构的权利
试图访问您新创建的项目之前,您需要设置的写权限缓存/
和日志/
目录到适当的水平,这样您的web服务器和命令行用户可以写:
美元ob娱乐下载symfony项目:权限
侧边栏
建议使用SCM工具的人
ob娱乐下载symfony只能写入一个symfony项目的两个目录,缓存/
和日志/
。这些目录的内容应该被你忽略SCM(通过编辑svn:忽略
例如房地产如果使用Subversion)。
Web服务器配置
丑陋的方式
在前面的章节中,您已经创建了一个目录,托管项目。如果您已经创建了您的web服务器的web根目录下的某个地方,你可以在web浏览器中访问项目。
当然,由于没有配置,快速建立,但尝试访问配置/ databases.yml
文件在您的浏览器来理解这种懒散的态度的不良后果。如果用户知道你的网站是发达与symfony,他将获得大量的敏感文件。ob娱乐下载
不要使用这个设置在生产服务器,阅读下一节,了解如何正确地配置您的web服务器。
安全的方式
良好的web实践只能把文件需要通过web浏览器访问web根目录下,如样式表、javascript和图片。默认情况下,我们建议下存储这些文件web /
symfony项目的子目录。ob娱乐下载
如果你看一看这个目录,你会发现一些对网络资产的子目录(css /
和图像/
)和两个前端控制器文件。前端控制器是唯一的PHP文件,需要在web根目录下。所有其他PHP文件从浏览器可以隐藏,这是一个好主意就安全而言。
Web服务器配置
现在是时候改变你的Apache配置,使新项目访问世界。
找到并打开httpd . conf
最后配置文件,添加以下配置:
#确保只有这条线在您的配置NameVirtualHost 127.0.0.1:8080 #这是配置为您的项目听127.0.0.1:8080 < VirtualHost 127.0.0.1:8080 > DocumentRoot“/ home / sfproject /网络”DirectoryIndex指数。php <目录“/ home / sfproject /网络”> AllowOverride所有允许从< /目录>别名/科幻/home/sfproject/lib/vendor/symfony/data/web/sf <目录“/ home /ob娱乐下载 sfproject / lib /供应商/ symfony /数据/ web /科幻”> AllowOverride所有允许从< /目录> < /虚拟主机>
请注意
的/科幻
别名给你图片和javascript文件需要正确显示默认symfony页面和web调试工具栏。ob娱乐下载
在Windows上,您需要更换别名
与类似的行:
别名/科幻“c: \开发\ sfproject \ lib \供应商\ symob娱乐下载fony \ data \ web \科幻”
和/home/sfproject/web
应该替换为:
c: \开发\ sfproject \ web
这种配置使Apache听端口8080年
在您的机器上,该网站将可访问以下网址:
http://localhost: 8080 /
你可以改变8080年
任何数量,但支持数字大于1024年
因为他们不需要管理员权限。
侧边栏
配置专用的域名
如果您的机器上的管理员,最好设置虚拟主机而不是添加一个新的端口每次你启动一个新项目。而不是选择一个端口和添加听
声明中,选择一个域名(例如真正的域名.localhost
最后补充道)和添加一个ServerName
声明:
#这是配置为您的项目< VirtualHost 127.0.0.1:80 > ServerName www.myproject.com.localhost < !——和以前相同的配置——> < /虚拟主机>
域名www.myproject.com.localhost
中使用Apache配置必须在本地声明。如果你运行的Linux系统,它必须做的设置
文件。如果您运行Windows XP, Vista或这个主题,这个文件位于C:\WINDOWS\system32\drivers\etc\
目录中。
添加以下行:
127.0.0.1 www.myproject.com.localhost
测试新的配置
重新启动Apache,检查,你现在可以访问打开一个浏览器并输入的新应用程序http://localhost: 8080 / index . php
,或http://www.myproject.com.localhost/index.php/
取决于你选择的Apache配置。
提示
如果你有Apachemod_rewrite
模块安装,您可以删除index . php /
URL的一部分。这是可能由于重写规则的配置web / . htaccess
文件。
你也应该尝试访问该应用程序在开发环境中(有关更多信息,请参见下一节关于环境)。输入以下URL:
http://www.myproject.com.localhost/frontend_dev.php/
web调试工具栏应该显示在右上角,包括小图标证明你三藩市/
别名配置是正确的。
请注意
设置略有不同,如果你想IIS服务器上运行symfony的Windows环境。ob娱乐下载找到如何配置它相关教程。
使用沙盒
如果你的目标是尝试symfony几个小时,继续阅ob娱乐下载读这一章,我们将告诉你最快的方法,以此让你开始复习。
symfony的最快方法实验是安装symfony沙箱。ob娱乐下载沙箱是dead-easy-to-install预包装的symfony项目,已经配置了一些合理的默认值。ob娱乐下载这是一个很好的方法来练习使用symfony没有正确安装的麻烦,尊重网络最ob娱乐下载佳实践。
谨慎
沙箱是预先配置使用SQLite数据库引擎,您需要检查您的PHP支持SQLite。也可以读取配置数据库部分,学习如何修改数据库使用的沙箱。
你可以下载symfony沙箱ob娱乐下载. tgz
或. zip
symfony的格式ob娱乐下载安装页面或在以下网址:
/ / sf_sandbox_1_4。tgz /会/ sf_sandbox_1_4.zip
Un-archive web根目录下的文件的地方,和你完成。symfoob娱乐下载ny项目现在由请求访问web / index . php
从浏览器脚本。
谨慎
所有web根目录下的symfoob娱乐下载ny文件在您的本地计算机上测试symfony的好选择。但生产服务器是一个非常糟糕的主意,因为它可能会使您的应用程序的所有内部可见给终端用户。
你现在可以完成你的安装通过阅读Web服务器配置部分。
请注意
作为一个沙箱是一个正常的symfony项目,一些任务已经执行ob娱乐下载了你和一些配置改变,很容易使用它作为一个起点一个新项目。然而,请记住,您可能需要调整配置;例如更改相关的安全设置(参见XSS的配置和CSRF在这一章)。
总结
测试和本地服务器上玩symfony,沙箱安装ob娱乐下载绝对是你的最佳选择,它包含一个预配置的symfony的环境。
对于一个真正的开发或生产服务器,选择存档安装或SVN checkout。这将安装symfony的库,你仍然需要初始化ob娱乐下载一个项目和一个应用程序。应用程序的最后一步设置服务器配置,可以在许多方面。ob娱乐下载与虚拟主机Symfony的作品非常好,这是推荐的解决方案。
如果你有任何问题在安装过程中,你会发现很多教程和常见问题的答案在symfony的网站。ob娱乐下载如果有必要,你可以提交你的问题symfony的社区,你会得到一个快速和有效的答案。欧宝体育平台怎么样ob娱乐下载
一旦初始化您的项目,它是一个好习惯开始一个版本控制的过程。
现在,您已经准备好使用symfony,是时候看到如何构建一个ob娱乐下载基本的web应用程序。
这项工作是GFDL许可执照。