隐藏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. 网页嵌入pdf、在线预览pdf工具及插件(转)

    摘要:在web开发时我们有时会需要在线预览PDF内容,在线嵌入pdf文件: 问题1:如何网页中嵌入PDF: 在网页中: 常用的几种PDF预览代码片段如下: 代码片段1: 1 <object ty ...

  2. Asp.net Core中文转换成拼音

    一.概述 之前使用.net framework,可以使用Microsoft Visual Studio International Feature Pack 1.0 进行转换,现在使用asp.net ...

  3. [转载]C / C++ 计算程序运行的时间

    原文链接:https://blog.csdn.net/qq_36667170/article/details/79507547 在学数据结构过程中老师让查看不同算法的运行时间,然后让自己打印运行时间. ...

  4. c#获取网络时间

    public static DateTime GetInternetDate()        {            var client = new TcpClient("time.n ...

  5. 常见SMT极性元器件识别方法

    极性元件在整个PCBA加工过程中需要特别注意,因为方向性的元件错误会导致批量性事故和整块PCBA板的失效,因此工程及生产人员了解SMT极性元件极为重要. 1.片式电阻(Resistor)无极性 2.电 ...

  6. java冒泡排序小实例

    首先我们了解下什么是冒泡排序: 冒泡排序就是把小的元素往前调或者把大的元素往后调.比较是相邻的两个元素比较,交换也发生在这两个元素之间.所以,如果两个元素相等,我想你是不会再无聊地把他们俩交换一下的: ...

  7. [转载]MII/MDIO接口详解

    原文地址:MII/MDIO接口详解作者:心田麦浪 本文主要分析MII/RMII/SMII,以及GMII/RGMII/SGMII接口的信号定义,及相关知识,同时本文也对RJ-45接口进行了总结,分析了在 ...

  8. 重置Brocade光纤交换机的管理IP地址

     1.使用串口登录光纤交换机 使用RS/232 (9针)串口连接线将笔记本连至交换机的串口. 输入以下参数: Bits per second (每秒位数): 9600 Data Bits (数据位): ...

  9. Python:JPG->JPEG

    由于要在网页上使用图片渐进加载,所以需要将其他图片格式转化为JPEG格式 考虑使用python来实现批量转换 需要先安装pillow: pip  install pillow 我这里将JPG格式转化为 ...

  10. public class Ex2

    写出输出的结果 A. 10 2 3 4 5B. 1 2 3 4 5C. 10 2 3 4 5 0 0 0 0 0D. 1 2 3 4 5 00 0 0 0 package com.yirose.jav ...