浅析ThinkPHP中的pathinfo模式和URL重写

yipeiwu_com5年前PHP代码库

复制代码 代码如下:

http://serverName/appName/module/action/id/1/

这个就是pathinfo模式

在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如:

复制代码 代码如下:

http://serverName/appName/module/action/year/2008/month/09/day/21/

通常的URL里面含有index.php,为了达到更好的SEO效果可能需要去掉URL里面的index.php ,通过URL重写的方式可以达到这种效果,通常需要服务器开启URL_REWRITE模块才能支持。
下面是Apache的配置过程,可以参考下:
1、httpd.conf配置文件中加载了mod_rewrite.so模块
2、AllowOverride None 将None改为 All
3、确保URL_MODEL设置为2
4、把下面的内容保存为.htaccess文件放到入口文件的同级目录下

复制代码 代码如下:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

对于重来没接触过.htacces文件的可以百度一些,这里提醒一下,保存的文件名就是 .htaccess,可能看起来只有后缀,就是这样,别又在前面加个  ***.htaccess。

重启Apache之后,原来的
http://serverName/index.php/Blog/read/id/1
就可以通过访问
http://serverName/Blog/read/id/1
简化了URL地址

相关文章

php实现最简单的MVC框架实例教程

本文以一个实例的形式讲述了PHP实现MVC框架的过程,比较浅显易懂。现分享给大家供大家参考之用。具体分析如下: 首先,在学习一个框架之前,基本上我们都需要知道什么是mvc,即model-...

PHP ignore_user_abort函数详细介绍和使用实例

ignore_user_abort 设置与客户机断开是否会终止脚本的执行。 本函数返回 user-abort 设置的之前的值(一个布尔值)。 int ignore_user_abort...

Ajax+PHP实现的分类列表框功能示例

Ajax+PHP实现的分类列表框功能示例

本文实例讲述了Ajax+PHP实现的分类列表框功能。分享给大家供大家参考,具体如下: 一 代码 conn.php: <?php $conn = mysql_conn...

ThinkPHP模型详解

模型定义,默认情况下,ThinkPHP的模型类是位于/Home/Model/目录之下,模型类通常需要继承系统的\Think\Model类或其子类,下面是一个Home\Model\User...

php计算数组相同值出现次数的代码(array_count_values)

php计算数组相同值出现次数,可以使用php自带函数array_count_values : 说明 array array_count_values ( array $input )ar...