隐藏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布局配置禁用和日志写入配置的更多相关文章

  1. Yii Framework隐藏index.php文件的步骤

    Yii Framework隐藏index.php文件的步骤 作者:feebas 发布于:2012-4-23 13:36 Monday 分类:Yii Framework 1.开启apache的mod_r ...

  2. thinkphp5.0如何隐藏index.php入口文件

    隐藏入口文件 public/index.php 同级的.htaccess文件 [ Apache ] 方法1: <IfModule mod_rewrite.c> Options +Follo ...

  3. 记录 nginx和php安装完后的URL重写,访问空白和隐藏index.php文件的操作方法

    sudo cd /etc/nginx/; sudo vi fastcgi_params; 1.URL重写 如果你的url参数不是用?xxx传递,而是自定义的,比如用/xx/xx/xx的方式传递,那么在 ...

  4. nginx下重写隐藏index.php文件

    location / { root /项目目录/; index index.php; if (-f $request_filename/index.php){ rewrite (.*) $1/inde ...

  5. yii2.0简单使用elasticsearch

    1.安装扩展 /c/phpStudy/PHPTutorial/php/php-5.5.38/php /c/ProgramData/ComposerSetup/bin/composer.phar req ...

  6. YII2.0 用GII创建视图文件后访问404

    使用GII的CRUD Generator创建searchModelClass 和控制器类文件,视图文件后,访问控制器地址后出现404的情况. 创建过程如图所示 后来发现是控制器类 Controller ...

  7. nginx 隐藏 index.php 和 开启 pathinfo 模式的配置

    nginx 通过 location 的规则匹配将 php 转发给 php-fpm 处理后获取结果然后返回给客户端,转发模式可以通过 unix sock 或 tcp socket 方式.百度了好多文章我 ...

  8. Yii2.0基础框架

    前言:最近在用php写一个项目的接口,所以需要学习一下Yii的框架,也在这里记录一下. 整体结构 ssets文件夹:assets的作用是方便模块化,插件化的,一般来说出于安全原因不允许通过url访问p ...

  9. nginx服务器绑定多个域名、支持pathinfo路由、隐藏index.php入口文件

    这篇文章仅仅是操作,解释说明部分待更新. 1. 修改nginx的配置文件(我的配置文件在/etc/nginx/nginx.conf) [root@xxx ~]# find / -name nginx. ...

随机推荐

  1. redis 字符串 数据类型

    1 字符串 设置:   set    key  value   获取:  get  key    删除:  del   key getrange   key    0 3    截取字符串内容    ...

  2. pyrhon 开始 基础类型

    https://repl.it/languages/python  线上编辑器 字符串不支持  减法 除法

  3. python中的生成器、迭代器、闭包、装饰器

    迭代器 迭代是访问集合元素的一种方式.迭代器是一个可以记住遍历的位置的对象.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退. 可迭代对象 以直接作用于 for ...

  4. Linux中如何添加/删除FTP用户并设置权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被设置用户名为test.被限制路径为/home/test 2.创建建用户:在root用户下:   user ...

  5. 安装最新版本的kubernets(+安装插件dashboard)

    一.安装docker // 安装系统工具: sudo yum install -y yum-utils device-mapper-persistent-data lvm2 // 添加docker y ...

  6. Python Requests库 Get和Post的区别和Http常见状态码

    (1)   在客户端,Get方式在通过URL提交数据,数据在URL中可以看到:POST方式,数据放置在HTML HEADER内提交. (2)   GET方式提交的数据最多只能有1024 Byte,而P ...

  7. mysql个人初配置

    记录下在ubuntu 18.04.3 LTS环境中安装mysql和个人初期简单设置. 1:安装myslq:sudo apt install mysql-server. 2:设置root密码.由于我没有 ...

  8. element-ui升级笔记;echarts图表100px问题

    1.element-ui的2.7以后的版本支持树形table结构的数据,考虑优化一下表格,就升级了,但是升级到最新的版本2.12发现table都出不来了,于是降级到2.7.目前功能正常,2.12的bu ...

  9. Hostapd初始化失败

    Hostapd hostapd 是一个用户态用于AP和认证服务器的守护进程.它实现了IEEE 802.11相关的接入管理,IEEE 802.1X/WPA/WPA2/EAP 认证, RADIUS客户端, ...

  10. samba服务和client挂载

    服务端 1.安装samba服务 yum -y install samba 2.创建系统用户 因为Samba 服务程序的数据库要求账户必须在当前系统中已经存在,否则日后创建文件时将导致文件的权限属性混乱 ...