Yii框架的路由配置方法分析

本文实例讲述了Yii框架的路由配置方法。分享给大家供大家参考,具体如下:

取消index.php

这两种方法都是在自动添加index.php

方法一:使用.htaccess

添加.htaccess文件  与index.php同级

RewriteEngine on
# if a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward the request to index.php
RewriteRule . index.php

方法二:vhost

<VirtualHost *:80>
    ServerName public.oa.com
    DocumentRoot "D:\phpStudy\PHPTutorial\WWW\OA\frontend\web"
    <Directory "D:\phpStudy\PHPTutorial\WWW\OA\frontend\web">
      # use mod_rewrite for pretty URL support
      RewriteEngine on
      # If a directory or a file exists, use the request directly
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      # Otherwise forward the request to index.php
      RewriteRule . index.php
      # use index.php as index file
      DirectoryIndex index.php
      # ...other settings...
      # Apache 2.4
      Require all granted
      ## Apache 2.2
      # Order allow,deny
      # Allow from all
    </Directory>
</VirtualHost>

Yii配置

    'urlManager' => [
      //美化路由
      'enablePrettyUrl' => true,
      //不启用严格解析
      'enableStrictParsing' => false,
      //index.php是否显示
      'showScriptName' => false,
      //伪静态化 seo
      'suffix' => '.html',
      //美化规则
      'rules' => [
        //第一条:文章详细页
        '<controller:\w+>/<id:\d+>'=>'<controller>/detail',
        //第二条:文章列表页
        'post'=>'post/index',
      ],
    ],

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

(0)

相关推荐

  • Yii入门教程之目录结构、入口文件及路由设置

    项目名称从"FantaCMS"修改成为"testyii"------ 俗! 1,项目目录结构分析 2,Yii入口文件分析 在Yii启动项目时,传递了项目主配置文件数组,那么Yii会在整个应用中绑定一个全局的Yii对象并且可以通过如下方法来调用该对象:Yii::app() Yii系统把配置文件中的数组值,通过键值对的形式绑定到了该对象上,例如在配置文件中我们配置了: 'name'=>'My Web Application', 那么我们在项目的任何一个地方通过该对

  • Yii框架中sphinx索引配置方法解析

    本文实例讲述了Yii框架中sphinx索引配置方法.分享给大家供大家参考,具体如下: 请先将var/test/documents.sql导入数据库,并配置好以下的MySQL用户密码数据库 #源定义 source mysql { type = mysql sql_host = localhost sql_user = root sql_pass = root sql_db = yii2 sql_port = 3306 sql_query_pre = SET NAMES utf8 sql_query

  • Yii学习总结之安装配置

    之前写过Yii的文章,正好假期没啥事,就结合以前的文章,Yii的官方文档,再加上最近的关于Yii的收获总结一下,写个系列~~ Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程.从 MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主题化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎一切功能.事实上,Yii是最有效率的PHP框架之一.Yii是一

  • Yii2框架控制器、路由、Url生成操作示例

    本文实例讲述了Yii2框架控制器.路由.Url生成操作.分享给大家供大家参考,具体如下: 控制器与路由 控制器以Controller作为后缀,继承自yii\web\Controller; 动作以action作为前缀,public访问修饰; 控制器ID 类名去后缀,全部转为小写,如果是驼峰命名多个单词转为中杠分割; 动作ID 去前缀,全部转为小写,如果是驼峰命名多个单词,转为中杠分割: 路由如何指向动作:控制器ID/动作ID URL访问规则:index.php?r=路由 传参使用&参数=值 的方式

  • yii2的restful api路由实例详解

    yii\rest\UrlRule 使用yii\rest\UrlRule来自动映射控制器的 restful 路由,简单快捷,缺点是必须得按规定好的方法名去写业务. 映射的规则如下,当然,你可以修改源码为你的习惯: public $patterns = [ 'PUT,PATCH {id}' => 'update', 'DELETE {id}' => 'delete', 'GET,HEAD {id}' => 'view', 'POST' => 'create', 'GET,HEAD' =

  • Yii配置与使用memcached缓存的方法

    本文实例讲述了Yii配置与使用memcached缓存的方法.分享给大家供大家参考,具体如下: 1. 下载memcached软件包,解压,把memcached.exe 放到随意一个地方,比如:d:/memcached/ 下. 2. 开始->运行->输入cmd,命令行打开memcached.exe,所在文件夹,输入:memcached.exe -d install  安装 3. 输入memcached.exe -d start 启动 4. 中加入 extension=php_memcache.dl

  • Yii2配置Nginx伪静态的方法

    本文实例讲述了Yii2配置Nginx伪静态的方法.分享给大家供大家参考,具体如下: 主要检查以下代码: location / { # Redirect everything that isn't a real file to index.php try_files $uri $uri/ /index.php?$args; } 完整代码: server { charset utf-8; client_max_body_size 128M; listen 80; ## listen for ipv4

  • 详解PHP的Yii框架的运行机制及其路由功能

    运行机制概述 每一次 Yii 应用开始处理 HTTP 请求时,它都会进行一个近似的流程. 用户提交指向 入口脚本 web/index.php 的请求. 入口脚本会加载 配置数组 并创建一个 应用 实例用于处理该请求. 应用会通过 request(请求) 应用组件解析被请求的 路由. 应用创建一个 controller(控制器) 实例具体处理请求. 控制器会创建一个 action(动作) 实例并为该动作执行相关的 Filters(访问过滤器). 如果任何一个过滤器验证失败,该动作会被取消. 如果全

  • YII分模块加载路由的实现方法

    起因.因为项目比较大了之后划了很多模块.就使得config下面的路由文件变得很庞大,变得不好维护.这个时候就想如果可以把路由拆分到不同模块去自己管理,就会变得清晰很多. 拆了之后项目配置结构如下 新增了一个modules.php来管理模块的加载 调整之前 web.php的模块加载配置如下 'modules' => [ 'setup' => [ 'class' => 'appcomponents\modules\setup\Module', ], 'shareorder' => [

  • Yii2.0 Basic代码中路由链接被转义的处理方法

    按照惯例,说下运行环境和各版本编号 OS:Windows10 Apache:2.4 MySQL:5.7.15 PHP:7.0.11 问题描述:按照官网的提示,下载了basic版本的代码,配置了虚拟域名,打开浏览器可以访问了(具体过程略). 但是,在点击链接地址时会发现,链接地址被转义了,"/"变成了"%2F". 查找代码,一步一步找. 找到最后yii-v2.0.9-basic\vendor\yiisoft\yii2\web\UrlManager.php 第371行,

随机推荐