url的4种访问方式    (这是重点!!)

1.PATHINFO 模式 --重点 在后面使用非常多,如果想传多个参数可以使用键1/值1/键2/值2方法

代码如下:
http://域名/项目名/入口文件/模块名/方法名/键1/值1/键2/值2

2.普通模式也称为重写模式

代码如下:
http://域名/项目名/入口文件?m=模块名&a=方法名&键1=值1&键2=值2

3.REWRITE重写模式,去掉入口文件便于SEO优化

代码如下:
http://域名/项目名/模块名/方法名/键1/值1/键2/值2

4.兼容模式

代码如下:
http://域名/项目名/入口文件?s=模块名/方法名/键1/值1/键2/值2

如何修改PATHINFO地址中的/改成-在Home/Conf/config.php中

代码如下:
'URL_PATHINFO_DEPR'=>'-',//修改RUL的分隔符,把地址栏的参数部分/换成:http://域名/项目名/入口文件/模块名-方法名-键1-值1-键2-值2

在index.php中开启调用模式,为了在后产模式中不让文件缓存影响开发

代码如下:
define('APP_DEBUG',ture);//如果设置为ture不缓存文件,false则缓存文件

REWRITE模式开启方法

在httpd.conf中查找rewrite_module modules/mod_rewrite.sl 把#去掉重启服务,在入口文件下新建.htaccess.php,重写文件是去掉index.php的意思:

代码如下:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
路由处理过程大概如下:

1.遍历路由规则rule,与当前PATHINFO字符串进行匹配,如果合法,则从PATHINFO中取出所需要的字符串。

2.路由中每条规则对应一个router,router中指定对应的模块以及方法,模块和方法可以用第1步中匹配到的字符串进行动态替代。

3.将剩余的参数都解析并写入到$_GET中。

TP-四种url访问的方式的更多相关文章

  1. tp-02 四种url访问的方式

    :http://localhost/index.php?m=模块&c=控制器&a=操作方法 [get模式] :http://localhost/index.php/模块[模块文件夹]/ ...

  2. thinkphp四种url访问方式详解

    本文实例分析了thinkphp的四种url访问方式.分享给大家供大家参考.具体分析如下: 一.什么是MVC thinkphp的MVC模式非常灵活,即使只有三个中和一个也可以运行. M -Model 编 ...

  3. thinkPHP四种URL访问方式(二)

    原文:thinkPHP四种URL访问方式(二) 四.url的4种访问方式      1.PATHINFO 模式 -- (重点) http://域名/项目名/入口文件/模块名/方法名/键1/值1/键2/ ...

  4. TP中的四种url访问方式

    什么是PATHINFO:就是http://localhost/index.php/Home/Index/index/a/1/b/2?c=3中的红色部分, 注意c=3并不是pathinfo的一部分,它是 ...

  5. nginx 和 tp兼容pathinfo和rewrite两种url访问方式

    环境:centos7,yum安装的nginx1.10.php-fpm,tp3.2 本方法只需要配置nginx.conf的一个文件就可以支持pathinfo和rewrite两种url访问方式 vim / ...

  6. nginx、TP框架实现兼容pathinfo和rewrite两种url访问方式

    环境:centos7,yum安装的nginx1.10.php-fpm,tp3.2 本方法只需要配置nginx.conf的一个文件就可以支持pathinfo和rewrite两种url访问方式 vim / ...

  7. thinkphp3.2笔记(2)调试模式,配置项C,创建模块, 四种URL模式,URL生成,跳转

    一.调试模式 TP的调试模式其实就控制了TP关于配置信息以及函数的缓存功能 如果开启了调试模式,每次访问项目,Tp都会去加载最新的配置以及函数信息. 如果关闭了调试模式,当tp第一次访问时会降配置以及 ...

  8. 浅淡Webservice、WSDL三种服务访问的方式(附案例)

    Webservice Webservice是使应用程序以与平台和编程语言无关的方式进行相互通信技术. eg:站点提供访问的数据接口:新浪微博.淘宝. 官方解释:它是一种构建应用程序的普遍模型,可以在任 ...

  9. ThinkPHP的四种URL模式 URL_MODEL

    ThinkPHP支持四种URL模式,可以通过设置URL_MODEL参数来定义,包括普通模式.PATHINFO.REWRITE和兼容模式. 普通模式 设置URL_MODEL 为0 采用传统的URL参数模 ...

随机推荐

  1. HTML之美化盒子

    1.    美化盒子 1.1.          美化文本 1.1.1.  字体大小[font-size]: 字符框的高度,可继承,默认值medium,16px.基准字号:浏览器设置的默认字体大小,通 ...

  2. 云端js动态效果

    效果图: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  3. Struts配置文件

    本章节将带你学习Struts2 应用程序所需的基本配置.在这里可以看到哪些将被配置到一些重要的配置文件中:web.xml.struts.xml.struts-config.xml以及struts.pr ...

  4. fastadmin 中 selectpage.js位置

    备注: //特殊字段处理 因为接收到input中的属性名会被转成小写所以增加了一对键值 keyField: 'primarykey' $.each({data: 'source', keyField: ...

  5. (备忘)Java数据类型中String、Integer、int相互间的转换

    1.Integer转换成int的方法 Integer i; int k = i.intValue();即Integer.intValue(); 2.int转换成Integer int i; Integ ...

  6. Summer training #8

    A: B:按题意直接暴力找符合题意的数的个数 #include <bits/stdc++.h> #include <cstring> #include <iostream ...

  7. python wechat

    Python _ithcat持续登陆问题(itchat.auto_login(hotReload=True) https://blog.csdn.net/weixin_43886198/article ...

  8. Navicat for Mysql查询结果导出无表名

    在查询窗口用select语句按条件查出所需结果,然后用“导出向导”把查询结果导成sql文件,但是导出来的sql语句没有表名了. 导成的sql文件大致是这样的, INSERT INTO `` (`id` ...

  9. 用脚本来运行scrapy crawl ...

    启动爬虫的命令为: scrapy crawl spidername(爬虫名) 方案(一)name.py #!/usr/bin/env python # -*- coding:utf-8 -*- fro ...

  10. Python之windows锁屏

    简单粗暴,三行代码搞定 from ctypes import * user32 = windll.LoadLibrary('user32.dll') user32.LockWorkStation() ...