在本节中,我们将介绍如何创建一个框架应用程序,它将作为我们的起点。为简单起见,我们假设 Web 服务器的文档根目录为 /wwwroot
,相应的 URL 为 http://www.example.com/
。
我们首先安装 Yii 框架。从 www.yiiframework.com 获取 Yii 发布文件(版本 1.1.1 或更高版本)的副本,并将其解压到 /wwwroot/yii
目录下。仔细检查以确保存在 /wwwroot/yii/framework
目录。
提示:Yii 框架可以安装在文件系统中的任何位置,不一定在 Web 文件夹下。它的
framework
目录包含所有框架代码,并且是部署 Yii 应用程序时唯一需要的框架目录。单个 Yii 安装可以被多个 Yii 应用程序使用。
安装 Yii 后,打开浏览器窗口并访问 URL http://www.example.com/yii/requirements/index.php
。它显示了 Yii 发布版本中提供的需求检查器。对于我们的博客应用程序,除了 Yii 所需的最低要求外,我们还需要启用 pdo
和 pdo_sqlite
PHP 扩展,以便我们可以访问 SQLite 数据库。
然后,我们使用 yiic
工具在 /wwwroot/blog
目录下创建一个框架应用程序。yiic
工具是 Yii 发布版本中提供的命令行工具。它可用于生成代码以减少某些重复的编码任务。
打开命令窗口并执行以下命令
% /wwwroot/yii/framework/yiic webapp /wwwroot/blog Create a Web application under '/wwwroot/blog'? [Yes|No]y ......
提示:为了如上所示使用
yiic
工具,CLI PHP 程序必须位于命令搜索路径上。如果不是,则可以使用以下命令代替path/to/php /wwwroot/yii/framework/yiic.php webapp /wwwroot/blog
要试用我们刚刚创建的应用程序,请打开 Web 浏览器并导航到 URL http://www.example.com/blog/index.php
。我们应该看到我们的框架应用程序已经具有四个功能齐全的页面:主页、关于页面、联系页面和登录页面。
在下文中,我们将简要描述此框架应用程序中的内容。
我们有一个 入口脚本 文件 /wwwroot/blog/index.php
,其内容如下
$yii='/wwwroot/framework/yii.php'; $config=dirname(__FILE__).'/protected/config/main.php'; // remove the following line when in production mode defined('YII_DEBUG') or define('YII_DEBUG',true); require_once($yii); Yii::createWebApplication($config)->run();
这是 Web 用户可以直接访问的唯一脚本。该脚本首先包含 Yii 引导文件 yii.php
。然后,它使用指定的配置创建一个 应用程序 实例并执行该应用程序。
我们还有一个 应用程序基础目录 /wwwroot/blog/protected
。我们的大多数代码和数据都将放置在此目录下,并且应防止 Web 用户访问。对于 Apache httpd Web 服务器,我们在此目录下放置一个 .htaccess
文件,其内容如下
deny from all
对于其他 Web 服务器,请参阅相应的文档以了解如何防止 Web 用户访问目录。
为了帮助理解 Yii 的工作原理,我们将描述用户访问其联系页面时框架应用程序中的主要工作流程
http://www.example.com/blog/index.php?r=site/contact
;/wwwroot/blog/protected/config/main.php
中指定的初始属性值进行配置;site
控制器和 contact
操作(/wwwroot/blog/protected/controllers/SiteController.php
中的 actionContact
方法);SiteController
实例的形式创建 site
控制器,然后执行它;SiteController
实例通过调用其 actionContact()
方法执行 contact
操作;actionContact
方法将名为 contact
的 视图 呈现给 Web 用户。在内部,这是通过包含视图文件 /wwwroot/blog/protected/views/site/contact.php
并将其结果嵌入到 布局 文件 /wwwroot/blog/protected/views/layouts/column1.php
中来实现的。发现错别字或您认为此页面需要改进?
在 github 上编辑它 !
在 MAMP 中使用 yiic
您可能需要将 MAMP 版本的 PHP 添加到您的 PATH 中
例如
export PATH=/Applications/MAMP/bin/php5/bin:${PATH}
在使用 xampp 时关于 yiic 工具的其他提示
如果您的 php 可执行文件未添加到您的路径中,请在 Windows 命令提示符中使用类似的命令
{php.exe 的路径} {yiic.php 的路径} {新 Web 应用程序的路径}
例如
E:\xampp\php\php.exe E:\xampp\htdocs\yiicore\framewor\yiic.php webapp E:\xampp\htdocs\yiiapp
您可能会遇到的问题
需要一种方法来 SSH 进入您的 Web 服务器?使用 PuTTY。只需在 Google 上搜索即可。
要轻松找到您的 path/to/php,请在使用 PuTTY 登录到服务器后输入以下内容
which php
它将返回类似以下内容:/usr/local/bin/php 事实上,如果需要,您也可以尝试此方法,因为很可能您的路径相同。
我不确定这一点,但您可能需要提前创建 /blog 文件夹。我遇到了问题,而这一系列步骤中的一步解决了我的问题,但我没有确认这是必需的。可能是 yiic 脚本在缺少时会创建它。
如果您尝试执行上述 unix 命令以构建框架应用程序并收到“权限被拒绝”错误,则很可能需要更改 /yii/framework/yiic 文件的权限以使其可执行。如果您将文件 chmod 为 754,则应该没问题。
在 Windows 中使用 XAMPP 时,PHP 不在您的 PATH 中
HossainK 的评论 #1312 现已过时。
最新版本的 XAMPP 使用了重新设计的
setup_xampp.bat
,它对许多操作使用 PHP 命令。如果您在 PATH 变量中没有指向 PHP.exe 的有效路径,则无法运行它,因此——无法安装 XAMPP 本身。在 PATH 变量中拥有指向 PHP.exe 的有效路径不是强制性的。
注册 或 登录 以发表评论。