ThinkPHP中的pathinfo模式和URL重写
程序员文章站
2022-04-20 15:04:42
...
不知道怎么解释这个pathinfo模式,那就先来一段代码说下pathinfo模式吧
1 http://serverName/appName/module/action/id/1/
这个就是pathinfo模式
在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如:
1 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地址
推荐阅读
-
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
-
在nginx中配置pathinfo模式支持thinkphp的URL重写
-
Nginx下配置pathinfo及ThinkPHP的URL Rewrite模式支持
-
Ubuntu下Nginx配置ThinkPHP的Pathinfo和URl Rewrite模式
-
浅析ThinkPHP中的pathinfo模式和URL重写
-
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
-
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
-
详解IIS中URL重写工具的匹配URL-规则模式(rule patterns)
-
IIS8中安装和使用URL重写工具(URL Rewrite)的方法
-
nginx支持codeigniter的pathinfo模式url重写配置写法示例