Yii2.0框架简介、下载安装和环境配置

Yii简介

  • Yii是一个高性能、基于组件的PHP框架,用于快速开发现代web应用程序,Yii(读 易)在中文里有“极致简单与不断演变”两重含义,也可看作是Yes It Is的缩写。
  • Yii是一个通用的Web编程框架,即可用于开发各种用PHP构建的Web应用。因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应用如门户网站、社区、内容管理系统(CMS)、电子商务项目RESTful Web服务

系统要求和先决条件

  • Yii2.0需要PHP5.4.0或以上的版本支持
  • Yii是一个纯面向对象的框架,使用Yii框架需要对面向对象编程(OOP)有一定成都的了解。

Yii亮点

  • 使用PHP依赖管理工具:Composer
  • gii生成器:提高工作效率
  • 活动记录(Active Record)
  • 强大的缓存机制

下载安装

1. composer方式安装

Composer下载地址
Packagist仓库(Composer管理的文件所在的仓库)

命令行安装:
先安装Composer Asset插件(可以在下载Yii的时候直接包含jquerybootstrap等静态资源)
composer global require "fxp/composer-asset-plugin:~1.1.1"

安装完Composer Asset插件以后开始安装 Yii 2.0。
安装基本的应用程序模板,运行下面的命令(安装到basic文件夹):
composer create-project yiisoft/yii2-app-basic basic
安装高级的应用程序模板,运行下面的命令(安装到advanced文件夹):
composer create-project yiisoft/yii2-app-advanced advanced
安装过程会从guihub上下载扩展包,需要输入github token:
https://github.com/settings/tokens

没有安装静态插件(Composer Asset)的话,会缺少vendor目录扩展包
需要在Yii目录下使用composer install来安装扩展包

2. 归档方式安装Yii

  • 下载Yii压缩包
  • 解压缩生成Yii框架目录
  • 修改config/web.php文件,给cookieValidationKey配置项添加一个密钥(通过composer安装此步骤会自动完成)
//在下面插入一段密钥(若为空)-以供cookie validation需要
'cookieValidationKey'=>'在此处输入你的密钥'
  • Linux下使用Composer安装Yii
  • Mac下Yii的下载安装

Yii框架参考文档

中文文档
英文文档

环境配置

  • (Windows: WAMP>2.5)PHP>=5.4
  • httpd.conf开启vhost组建
  • httpd-vhosts.conf配置域名
  • 修改hosts文件
  • 重启apache/ngnix

配置 Web 服务器

Info: 如果你现在只是要试用 Yii 而不是将其部署到生产环境中, 本小节可以跳过。

通过上述方法安装的应用程序在 Windows,Max OS X, Linux 中的 Apache HTTP 服务器 或 Nginx HTTP 服务器且PHP版本为5.4或更高都可以直接运行。 Yii 2.0 也兼容 Facebook 公司的 HHVM, 由于 HHVM 和标准 PHP 在边界案例上有些地方略有不同,在使用 HHVM 时需稍作处理。
在生产环境的服务器上,你可能会想配置服务器让应用程序可以通过 URL http://www.example.com/index.php
访问而不是
http://www.example.com/basic/web/index.php 。 这种配置需要将 Web 服务器的文档根目录指向 basic/web
目录。 可能你还会想隐藏掉 URL 中的 index.php
,具体细节在 URL 解析和生成一章中有介绍, 你将学到如何配置 Apache 或 Nginx 服务器实现这些目标。

Info: 将 basic/web设置为文档根目录,可以防止终端用户访问 basic/web
相邻目录中 的私有应用代码和敏感数据文件。 禁止对其他目录的访问是一个不错的安全改进。

Info: 如果你的应用程序将来要运行在共享虚拟主机环境中, 没有修改其 Web 服务器配置的权限,你依然可以通过调整应用的结构来提升安全性。 详情请参考共享主机环境 一章。

推荐使用的 Apache 配置

在 Apache 的 httpd.conf文件或在一个虚拟主机配置文件中使用如下配置。 注意,你应该将 path/to/basic/web
替换为实际的basic/web
目录。

# 设置文档根目录为 “basic/web”
DocumentRoot "path/to/basic/web"
 
    # 开启 mod_rewrite 用于美化 URL 功能的支持(译注:对应 pretty URL 选项)
    RewriteEngine on
    # 如果请求的是真实存在的文件或目录,直接访问 
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d 
    # 如果请求的不是真实文件或目录,分发请求至 index.php 
    RewriteRule . index.php 
    # ...其它设置...

推荐使用的 Nginx 配置

为了使用 Nginx,你应该已经将 PHP 安装为 FPM SAPI 了。 使用如下 Nginx 配置,将 path/to/basic/web
替换为实际的 basic/web目录,mysite.local 替换为实际的主机名以提供服务。

server { 
     charset utf-8; 
     client_max_body_size 128M;

     listen 80; ## listen for ipv4 
     #listen [::]:80 default_server ipv6only=on; ## listen for ipv6 

     server_name mysite.local; 
     root      /path/to/basic/web; 
     index     index.php; 

     access_log     /path/to/basic/log/access.log; 
     error_log       /path/to/basic/log/error.log;
     
     location / { 
         # Redirect everything that isn't a real file to index.php 
         try_files $uri $uri/ /index.php$is_args$args; 
     } 

     # uncomment to avoid processing of calls to non-existing static files by Yii 
     #location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { 
     # try_files $uri =404; 
     #} 
     #error_page 404 /404.html; 
     location ~ \.php$ { 
         include fastcgi_params; 
         fastcgi_param SCRIPT_FILENAME $document_root$
         fastcgi_script_name; 
         fastcgi_pass 127.0.0.1:9000; 
         #fastcgi_pass unix:/var/run/php5-fpm.sock; 
         try_files $uri =404; 
     } 

      location ~ /\.(ht|svn|git) { 
          deny all; 
      }
}

使用该配置时,你还应该在 php.ini 文件中设置 cgi.fix_pathinfo=0
, 能避免掉很多不必要的 stat() 系统调用。
还要注意当运行一个 HTTPS 服务器时,需要添加 fastcgi_param HTTPS on;
一行, 这样 Yii 才能正确地判断连接是否安全。

你可能感兴趣的:(Yii2.0框架简介、下载安装和环境配置)