文档章节

YII初探

墨梅
 墨梅
发布于 2016/12/07 10:44
字数 605
阅读 24
收藏 0

写此文是对自己的一种督促,也是对学习过程的一个记录。 先说一下对YII的第一感觉:封装极好,好像使用很方便,工具插件很多,可以很方便的开发一套mvc站点。 为啥会有这样的感觉?是因为我之前接触到的框架都是更贴近原生,代码极简,只保留核心模块,大部分功能都要自己动手来写。此前一直认为php框架也就是解决了一些基本路由,数据库处理和视图生成的功能。学习Yii之后才发现,框架其实可以做的很方便,代码开发效率可以更高,由此可见此前的自己还是太井底之蛙了! 最后,附上自己了解到的一个小问题,并以此文为开始,记录自己的Yii学习之旅。

使用Gii模块,报403错误

Forbidden (#403)           
 You are not allowed to access this page.
 
 The above error occurred while the Web server was processing your request.    
 Please contact us if you think this is a server error. Thank you.

如果出到以上的错误,请先确认你的配置是否是正确的。

if (YII_ENV_DEV) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = [
        'class' => 'yii\debug\Module',
    ];

    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
    ];
}

原始 的配置是这样的,如果你的 使用的是本地的服务器的话也就是localhost,则不会存在问题。

如果你使用的是远程服务器或者本地虚拟机的话,就会出现以上的错误提示了 详细分析得知,是Gii做了默认IP限定了 源代码如下:

namespace yii\gii;

use Yii;
use yii\base\BootstrapInterface;
use yii\web\ForbiddenHttpException;
class Module extends \yii\base\Module implements BootstrapInterface
{
public $controllerNamespace = 'yii\gii\controllers';
public $allowedIPs = ['127.0.0.1', '::1'];
。。。。。。

源代码做了限定了 只允许 127.0.0.1是可以访问的其他都是不行的。

所以解决以上的问题 需要修改配置如下:

if (YII_ENV_DEV) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = [
        'class' => 'yii\debug\Module',
    ];

    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
        'allowedIPs' => ['127.0.0.1', '::1', '192.168.*.*', '192.168.178.20'],
    ];
}

这样在 allowedIPs 数组里面的IP全部可以访问了

© 著作权归作者所有

共有 人打赏支持
墨梅
粉丝 16
博文 218
码字总数 43367
作品 0
杭州
后端工程师
Yii入门指导(四):强大的“小物件”

1,修改默认的控制器 Yii的默认应用: 所有的配置都可以在main.php中进行配置,那么修改默认的控制器就是在main.php中增加如下代码: 'defaultController' => '', //修改默认控制器 Yii模块:...

Koma
2014/10/24
0
1
Yii入门指导(三):Yii“模块”窥探

1,Yii模块简介 Yii中的模块,可以把它看做成一个单独的应用,它具有独立的控制器、模型、视图以及组件等。 通常情况下,我们使用Yii做WEB项目开发,那么“默认的Yii应用”我们可以作为WEB的...

Koma
2014/10/22
0
0
安装指南: 带有 RBAC 的 Yii2 高级模板

在这里我介绍一种快速简单的方法来在 Yii2 高级模版中安装 RBAC(Role Based Access Control) 系统 安装: Yii2 高级模板 在这里使用 安装 yii2 高级模板。假如你的机器中没有 请下载 它的最新...

首席烤地瓜
2016/11/10
17
0
YII之yiic创建YII应用

yii提供了强大的命令行工具来快速的创建相关组件和应用。 下面就来讲解用yiic工具快速创建yii应用 我的web目录在 d:www下 yiiframework在 D:wwwyiiframework win平台 cd 进入 wwwyiiframewor...

freedonn
2014/07/30
0
0
在 Swoole 上运行 yii2 - yii2-swoole

yii2 swoole:让yii2运行在swoole上 性能 运行在swoole上的yii2是运行在php-fpm上yii2的5倍以上,而且一句代码也不用修改。 在线demo性能体验 各个演示站点后台 用户名:feehicms 密码123456 ...

liufee
2017/12/24
139
1

没有更多内容

加载失败,请刷新页面

加载更多

linux 系统的运行级别

运行级别 运行级别 | 含义 0 关机 1 单用户模式,可以想象为windows 的安全模式,主要用于修复系统 2 不完全的命令模式,不含NFS服务 3 完全的命令行模式,就是标准的字符界面 4 系统保留 5 ...

Linux学习笔记
52分钟前
1
0
学习设计模式——命令模式

任何模式的出现,都是为了解决一些特定的场景的耦合问题,以达到对修改封闭,对扩展开放的效果。命令模式也不例外: 命令模式是为了解决命令的请求者和命令的实现者之间的耦合关系。 解决了这...

江左煤郎
59分钟前
2
0
字典树收集(非线程安全,后续做线程安全改进)

将500W个单词放进一个数据结构进行存储,然后进行快速比对,判断一个单词是不是这个500W单词之中的;来了一个单词前缀,给出500w个单词中有多少个单词是该前缀. 1、这个需求首先需要设计好数据结...

算法之名
昨天
10
0
GRASP设计模式

此文参考了这篇博客,建议读者阅读原文。 面向对象(Object-Oriented,OO)是当下软件开发的主流方法。在OO分析与设计中,我们首先从问题领域中抽象出领域模型,在领域模型中以适当的粒度归纳...

克虏伯
昨天
0
0
Coding and Paper Letter(四十)

资源整理。 1 Coding: 1.Tomislav Hengl撰写的非官方作者指南:Michael Gould•Wouter Gerritsma。 UnofficialGuide4Authors 2.R语言包rwrfhydro,社区贡献的工具箱,用于管理,分析和可视化...

胖胖雕
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部