关于这个问题应该是有很多人写过了,算是老生常谈了,本文也是在学习了http://farlee.info/archives/zend-framework-tutorial.html之后,才写的一点东西。主要是按照上述博文学习下来,发现竟然不能成功,有些许的地方存在出入,在这里做一个总结。
本文基于Apache+Mysql+Php+ZendFramework-1.12.5-minimal,至于Apache+Mysql+Php环境的搭建,可以参考之前的博文 "开始学习PHP之开发环境搭建(Apache+Mysql+Php)"
安装Zend框架和Zend_T ool(引自 http://farlee.info/archives/zend-framework-zend-tool-installation.html )Zend Framework 配置要求
- PHP版本大于PHP 5.2.4。
- Web 服务器支持重写,如Apache mod_rewrite。
关于这个需要到 /usr/local/apache2/conf/目录下的httpd.conf中确认是否有LoadModule rewrite_module modules/mod_rewrite.so,一般是注释掉的,需要将前面的#删除
- 服务器开启重写功能,如Apache http.conf 配置文件,需设置AllowOverride None 改为 AllowOverride All,以支持.htaccess 文件。
Zend Framework 安装
这里以Ubuntu为例(其他Linux/Unix系统类似)。首先到Zend 官网下载最新的ZendFramework
版本选择:Zend Framework 1.12.5 Minimal 即可,下载完成可解压到想要的任意目录。比如/usr/share/
添加Zend library
解压以后,要设置确保解压文档中 Zend Framework 的 library 目录在 php 配置的 inclue_path 变量的目录下。大概有三种方法:
- 执行
php -i | grep include_path得知当前php的include_path路径,比如/usr/share/php,再将library目录下的Zend文件夹整个复制/移动到/usr/share/php/目录下。注意,一般情况下,命令行输入php系统会提示说没有安装php,这是因为php安装在/usr/local/php中,而可执行文件php位于其中的bin目录下,因此,为了输入php可以正确执行安装的php,可以用软链接将/usr/local/php/bin/php 链接到/usr/bin/php,即执行
即可。ln -s /usr/local/php/bin/php /usr/bin/php
- 修改
php.ini配置,将解压后的library目录路径添加到include_path变量中,(php.ini文件路径查询:php -i | grep php.ini;)。在环境搭建这一节,将php.ini放在了/usr/local/lib/php.ini,在php.ini中查找include_path,将其添加为:
修改了php.ini要在重启apache 服务器之后才会生效include_path=".:/usr/share/ZendFramework-1.12.5-minimal/library"
-
第三种方法是不用将Zend的library添加到include_path中,而是在创建zf项目后,将library/Zend 目录复制到(或软链接到)项目的library 目录下(下一节将介绍)。
添加Zend Framework命令行工具
我们看到解压的Zend Framework 文档目录中还有一个bin目录,这是配置ZF命令行工具的脚本,把里面的zf.sh可执行文件复制到ubuntu系统的可执行目录下就行。当然也可以不复制或移动文件,在系统可执行目录下使用软链接将bin链接到这个zf.sh文件。
sudo ln -s /usr/share/ZendFramework-1.12.5-minimal/bin/zf.sh /usr/bin/zf
然后在命令行终端执行zf show version测试,显示Zend Framework Version: 1.12.5,则表明zf命令行工具安装配置完成。
开始创建ZF应用
cd /usr/local/apache2/htdocs
zf create project zftest
- zftest/application 这是zf的主体程序文件,包括配置文件、MVC的3个目录controllers/models/views、Bootstrap.php。
- zftest/docs 这是程序文档或手写的记录备忘等,实际应用中不上传。
- zftest/library 这是上一节说到的添加Zend library的第三种方法,如
cd /usr/local/apache2/htdocs/zftest/library; ln -s /usr/share/ZendFramework-1.12.5-minimal/library/Zend
- zftest/public 这是网站根目录访问路径。
ls -a ../public可以看到还有一个隐藏的.htaccess文件。 - zftest/tests 测试目录。
将 /usr/local/apache2/htdocs/zftest/docs 目录下README.txt中的
<VirtualHost *:80>
DocumentRoot "/usr/local/apache2/htdocs/zftest/public"
ServerName zftest.local
# This should be omitted in the production environment
SetEnv APPLICATION_ENV development
<Directory "/usr/local/apache2/htdocs/zftest/public">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>复制到/usr/local/apache2/conf/httpd.conf中
修改/etc/hosts 把zftest.local 指向127.0.0.1。访问http://zftest.local (或http://localhost/zftest/public/) 就能打开显示zf图标的页面了。zftest 这个Zend Framework 项目就算创建好了。
本文基于Apache+Mysql+Php+ZendFramework-1.12.5-minimal环境,详细介绍了Zend Framework 1.12.5 Minimal的安装步骤以及创建项目的全过程,包括配置Apache、安装Zend框架和Zend_Tool、修改PHP配置、添加Zend library、安装命令行工具、创建项目等关键步骤,并提供了服务器配置文件修改、虚拟主机设置及测试页面展示的完整流程。
1617

被折叠的 条评论
为什么被折叠?



