Yii2.0简单隐藏index.php文件和模块配置和layout布局配置禁用和日志写入配置
隐藏index.php文件
目的:想去掉浏览器地址栏中的 index.php?r= 这一块。
在/config/web.php中 ’components'=>[] 中添加如下代码:
'urlManager' => [
'enablePrettyUrl' => true,//路由的路径化
'enableStrictParsing' => false,//禁止严格url解析
'showScriptName' => false,//允许去掉index.php
'rules' => [
//['class' => 'yii\rest\UrlRule', 'controller' => 'test'],
],
],
改了以上这些,?r= 可以用 / 代替访问了,但是想隐藏掉index.php还是不行。
需要在/web目录中,index.php同级的目录下添加.htaccess文件。
新建htaccess文件代码示例:
Options +FollowSymLinks
IndexIgnore /
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
模块配置
创建模块,该目录中有子目录如Module.php, controllers,models,views 分别为对应模块类文件,控制器,模型,视图等。
一个模块类文件,demo大致定义:
<?php namespace app\modules\admin; /**
* admin module definition class
*/
class Module extends \yii\base\Module
{
/**
* {@inheritdoc}
*/
public $controllerNamespace = 'app\modules\admin\controllers'; /**
* {@inheritdoc}
*/
public function init()
{
parent::init();
// custom initialization code goes here
}
}
在/config/web.php中添加模块配置:
$config = [
'modules' => [
'admin' => [
'class' => 'app\modules\admin\Module',
'defaultRoute' => 'index',
],
],
]
视图 layout 布局配置和禁用
使用yii2下载安装包,加载视图会自动加载yii界面默认布局。自定义配置和禁用方法如下:
方案1:控制器内成员变量
public $layout = false; //不使用布局
public $layout = "main"; //设置使用的布局文件
方案2:控制器成员方法内
$this->layout = false; //不使用布局
$this->layout = "main"; //设置使用的布局文件
方案3:视图中选择布局
$this->context->layout = false; //不使用布局
$this->context->layout = 'main'; //设置使用的布局文件
yii2.0 日志写入
使用方法:
1、\Yii::getLogger()->log($message, $level, $category = 'application'); 2、\Yii::trace($message, $category = 'application'); 3、\Yii::error($message, $category = 'application'); 4、\Yii::warning($message, $category = 'application'); 5、\Yii::info($message, $category = 'application;);
在/config/web.php中修改log配置,demo如下:
$config = [
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [ //可以配置多个log
[
'class' => 'yii\log\FileTarget', //yii2处理日志的类
'levels' => ['error', 'warning','info','trace'], //设置日志记录的级别
'logVars' => ['*'], //捕获请求参数
//'categories' => ['application'], //自定义日志分类
//'logFile' => '@runtime/logs/app.log', //自定义文件路径
],
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning','info','trace'],
'logVars' => ['*'],
'categories' => ['test'],
'logFile' => '@runtime/logs/test.log',
]
],
],
]
Yii2.0简单隐藏index.php文件和模块配置和layout布局配置禁用和日志写入配置的更多相关文章
- Yii Framework隐藏index.php文件的步骤
Yii Framework隐藏index.php文件的步骤 作者:feebas 发布于:2012-4-23 13:36 Monday 分类:Yii Framework 1.开启apache的mod_r ...
- thinkphp5.0如何隐藏index.php入口文件
隐藏入口文件 public/index.php 同级的.htaccess文件 [ Apache ] 方法1: <IfModule mod_rewrite.c> Options +Follo ...
- 记录 nginx和php安装完后的URL重写,访问空白和隐藏index.php文件的操作方法
sudo cd /etc/nginx/; sudo vi fastcgi_params; 1.URL重写 如果你的url参数不是用?xxx传递,而是自定义的,比如用/xx/xx/xx的方式传递,那么在 ...
- nginx下重写隐藏index.php文件
location / { root /项目目录/; index index.php; if (-f $request_filename/index.php){ rewrite (.*) $1/inde ...
- yii2.0简单使用elasticsearch
1.安装扩展 /c/phpStudy/PHPTutorial/php/php-5.5.38/php /c/ProgramData/ComposerSetup/bin/composer.phar req ...
- YII2.0 用GII创建视图文件后访问404
使用GII的CRUD Generator创建searchModelClass 和控制器类文件,视图文件后,访问控制器地址后出现404的情况. 创建过程如图所示 后来发现是控制器类 Controller ...
- nginx 隐藏 index.php 和 开启 pathinfo 模式的配置
nginx 通过 location 的规则匹配将 php 转发给 php-fpm 处理后获取结果然后返回给客户端,转发模式可以通过 unix sock 或 tcp socket 方式.百度了好多文章我 ...
- Yii2.0基础框架
前言:最近在用php写一个项目的接口,所以需要学习一下Yii的框架,也在这里记录一下. 整体结构 ssets文件夹:assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问p ...
- nginx服务器绑定多个域名、支持pathinfo路由、隐藏index.php入口文件
这篇文章仅仅是操作,解释说明部分待更新. 1. 修改nginx的配置文件(我的配置文件在/etc/nginx/nginx.conf) [root@xxx ~]# find / -name nginx. ...
随机推荐
- redis 字符串 数据类型
1 字符串 设置: set key value 获取: get key 删除: del key getrange key 0 3 截取字符串内容 ...
- pyrhon 开始 基础类型
https://repl.it/languages/python 线上编辑器 字符串不支持 减法 除法
- python中的生成器、迭代器、闭包、装饰器
迭代器 迭代是访问集合元素的一种方式.迭代器是一个可以记住遍历的位置的对象.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退. 可迭代对象 以直接作用于 for ...
- Linux中如何添加/删除FTP用户并设置权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被设置用户名为test.被限制路径为/home/test 2.创建建用户:在root用户下: user ...
- 安装最新版本的kubernets(+安装插件dashboard)
一.安装docker // 安装系统工具: sudo yum install -y yum-utils device-mapper-persistent-data lvm2 // 添加docker y ...
- Python Requests库 Get和Post的区别和Http常见状态码
(1) 在客户端,Get方式在通过URL提交数据,数据在URL中可以看到:POST方式,数据放置在HTML HEADER内提交. (2) GET方式提交的数据最多只能有1024 Byte,而P ...
- mysql个人初配置
记录下在ubuntu 18.04.3 LTS环境中安装mysql和个人初期简单设置. 1:安装myslq:sudo apt install mysql-server. 2:设置root密码.由于我没有 ...
- element-ui升级笔记;echarts图表100px问题
1.element-ui的2.7以后的版本支持树形table结构的数据,考虑优化一下表格,就升级了,但是升级到最新的版本2.12发现table都出不来了,于是降级到2.7.目前功能正常,2.12的bu ...
- Hostapd初始化失败
Hostapd hostapd 是一个用户态用于AP和认证服务器的守护进程.它实现了IEEE 802.11相关的接入管理,IEEE 802.1X/WPA/WPA2/EAP 认证, RADIUS客户端, ...
- samba服务和client挂载
服务端 1.安装samba服务 yum -y install samba 2.创建系统用户 因为Samba 服务程序的数据库要求账户必须在当前系统中已经存在,否则日后创建文件时将导致文件的权限属性混乱 ...