Heim >Backend-Entwicklung >PHP-Tutorial >ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结,thinkphppathinfo_PHP教程

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

WBOY
WBOYOriginal
2016-07-13 10:20:151035Durchsuche

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其实也是伪静态的一种。
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/868228.htmlTechArticleThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结,thinkphppathinfo 本文针对ThinkPHP中pathinfo的两种模式、四种路径访问模式和URL重写相关...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn