浅谈ThinkPHP的URL重写


Posted in PHP onNovember 25, 2014

我想要的结果无非是去掉URL路径中的index.php

首先是配置.htaccess

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

</IfModule>

因为我部署在apache上面,需要httpd.conf配置文件中找到LoadModule rewrite_module modules/mod_rewrite.so去掉前面的#,找到AllowOverride None改为AllowOverride All。

现在访问localhost/product有效,但是__APP__或者__URL__或者U获取出来的路径包含有index.php,也就是为localhost/index.php,原来还有一步,需要在conf/config.php里面修改或者添加'URL_MODEL'=>2,

而因为我尝试部署的是基于ThinkPHP的conist企业版2.0,在config.php里竟然有这么一个配置'URL_MODEL' =>C('TOKEN.false_static'),,而TOKEN.false_static的值在初始化的时候被设置为了1,所以。。。模式一直还是1,PATHINFO模式。

在新浪SAE部署,不支持.htaccess,只支持其自有的配置文件config.yaml,所以要在config.yaml添加下面这段重写格式代码:

handle:

- rewrite: if(!is_dir() && !is_file() && path~"^(.*)$") goto "index.php/$1"

是不是超级简单呢,如果还想深入的学习其他伪静态方面的知识,请好好研读下下面的文章推荐吧。

PHP 相关文章推荐
如何分别全角和半角以避免乱码
Oct 09 PHP
基于文本的搜索
Oct 09 PHP
PHP的FTP学习(二)
Oct 09 PHP
php Rename 更改文件、文件夹名称
May 24 PHP
PHP中计算字符串相似度的函数代码
Dec 29 PHP
php定时计划任务的实现方法详解
Jun 06 PHP
查找php配置文件php.ini所在路径的二种方法
May 26 PHP
PHP判断字符串长度的两种方法很实用
Sep 22 PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
Jul 20 PHP
php实现简单四则运算器
Nov 29 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
Mar 04 PHP
详解Laravel服务容器的优势
May 29 PHP
ThinkPHP独立分组使用的注意事项
Nov 25 #PHP
php中in_array函数用法探究
Nov 25 #PHP
浅谈php正则表达式中的非贪婪模式匹配的使用
Nov 25 #PHP
ThinkPHP提交表单时默认自动转义的解决方法
Nov 25 #PHP
php中ltrim()、rtrim()与trim()删除字符空格实例
Nov 25 #PHP
使用PHP Socket 编程模拟Http post和get请求
Nov 25 #PHP
PHP实现无限极分类图文教程
Nov 25 #PHP
You might like
PHP中for循环语句的几种变型
2006/11/26 PHP
PHP根据IP判断地区名信息的示例代码
2014/03/03 PHP
PHPer 需要了解的 5 个 Composer 小技巧
2014/08/18 PHP
织梦sitemap地图实时推送给百度的教程
2015/08/03 PHP
PHPStorm 2020.1 调试 Nodejs的多种方法详解
2020/09/17 NodeJs
HTTP状态代码以及定义(解释)
2007/02/02 Javascript
JavaScript打印iframe内容示例代码
2013/08/20 Javascript
Extjs4中的分页应用结合前后台
2013/12/13 Javascript
浅析js预加载/延迟加载
2014/09/25 Javascript
基于JavaScript如何实现ajax调用后台定义的方法
2015/12/29 Javascript
使用OpenLayers3 添加地图鼠标右键菜单
2015/12/29 Javascript
Vue.js基础知识汇总
2016/04/27 Javascript
angular ngClick阻止冒泡使用默认行为的方法
2016/11/03 Javascript
javascript实现消灭星星小游戏简单版
2016/11/15 Javascript
详解Vue项目编译后部署在非网站根目录的解决方案
2018/04/26 Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
2018/12/22 Javascript
Vue中对iframe实现keep alive无刷新的方法
2019/07/23 Javascript
[09:23]国际邀请赛采访专栏:iG战队VK,Tongfu战队Cu
2013/08/05 DOTA
[02:28]DOTA2英雄基础教程 狼人
2013/12/23 DOTA
python中 ? : 三元表达式的使用介绍
2013/10/09 Python
python读取指定字节长度的文本方法
2019/08/27 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
2020/01/15 Python
Python集合操作方法详解
2020/02/09 Python
python扫描线填充算法详解
2020/02/19 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
2020/06/04 Python
浅谈django框架集成swagger以及自定义参数问题
2020/07/07 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
2020/11/25 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
2021/02/04 Python
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
Html5导航栏吸顶方案原理与对比实现
2020/06/10 HTML / CSS
杰夫·班克斯男士服装网上商店:Jeff Banks
2019/10/24 全球购物
咨询公司各岗位职责
2013/12/02 职场文书
公务员培训自我鉴定
2014/02/01 职场文书
浪漫的婚礼主持词
2015/06/30 职场文书
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python