> php教程 > php手册 > ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结,thinkphppathinfo

ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结,thinkphppathinfo

WBOY
풀어 주다: 2016-06-13 09:26:34
원래의
1286명이 탐색했습니다.

ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结,thinkphppathinfo

本文针对ThinkPHP中pathinfo的两种模式、四种路径访问模式和URL重写相关知识进行了总结归纳,分享给大家便于查询和借鉴。具体归纳如下:

1、pathinfo

访问模块IndexAction.class.php下边的test方法

   http://localhost/index.php?m=Index&a=test 等同于 http://localhost/index.php/Index/test

2、四种路径访问模式
   
在config目录下边来做修改 URL_MODEL的值,分别表述如下:

值为0   叫做普通模式。如:http://localhost/index.php?m=模块&a=方法
值为1   叫做pathinfo模式。如:http://localhost/index.php/模块/方法
值为2   叫做rewrite重写(伪静态) 可以自己写相关的rewrite规则,也可以使用系统为我们提供的rewrite规则隐藏掉index.php,生成:http://localhost/模块/方法
值为3   叫做兼容模式。当服务器上面不支持pathinfo模式的时候,但是你又在之前的路径访问格式上面,全部用的是pathinfo格式。那么它会提示你路径格式不正确。那么,你就可以用标号为3的兼容模式来处理。他的路径访问类似于http://localhost/index.php?s=模块/方法 

3、URL重写步骤:
 
(1)、D:\wamp\wamp\Apache2\conf\httpd.conf开启apache服务器中的URL_REWRITE模块 

(2)、AllowOverride None 将 None 改为 All

(3)、确保config.php配置文件中 URL_MODEL 设置为 2

(4)、把 .htaccess 文件放到入口文件的同级目录下
   
采用URL重写利于seo,不过会加大服务器的性能消耗。

希望本文所述对大家ThinkPHP程序设计有所帮助。

ThinkPHP的url路径访问模式相关的问题

是可以用$_GET获取的
举个例子
index.php/action/function/id/2

$_GET[cation]就是function

$_GET[id]就是2

懂了吗?只是形式换了,值一样是可以取的
 

thinkphp的4种URL模式在url访问上不同在哪,不说那些URL重写之类的功可以

localhost/think/index.php/Index/index这一个是伪静态URL地址,为了使页面更好的被搜索引擎抓取。搜索引擎更偏好于静态页面,动态页面又一个特点就是有个?号,所以这样写就把它去掉了。

localhost/...=index这一个是最原始的访问方法。典型的动态网页URL地址。对搜索引擎不友好。

localhost/think/index.php/Index/index?id=1这个是伪静态的兼容性写法。有的服务器不支持伪静态,所以这样写。

还有一种方式你没提出来:即localhost/think/index/Index/index。他是apache的rewrite功能,需要开启rewrite模块。但是有的服务器并没有开启,并且开启的话会增加服务器的资源消耗。

总结:你在伪静态后面可以添加.html或者.htm等静态页面的扩展名,把伪静态做的更加完美,TP框架有这样的功能,你研究下。

注:rewrite其实也是伪静态的一种。
 

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿