浅谈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 相关文章推荐
PHP4实际应用经验篇(9)
Oct 09 PHP
用php获取本周,上周,本月,上月,本季度日期的代码
Aug 05 PHP
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
May 06 PHP
PHP利用func_get_args和func_num_args函数实现函数重载实例
Nov 12 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
Feb 02 PHP
PHP与Java对比学习日期时间函数
Jul 03 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
PHP设计模式之装饰器模式定义与用法详解
Apr 02 PHP
ThinkPHP框架实现的MySQL数据库备份功能示例
May 24 PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 PHP
laravel5.1框架model类查询的实现方法
Oct 08 PHP
PHP 实现缩略图
Mar 09 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 explode()函数的几个应用和implode()函数有什么区别
2015/11/05 PHP
PHP5.5新特性之yield理解与用法实例分析
2019/01/11 PHP
Yii框架Session与Cookie使用方法示例
2019/10/14 PHP
将HTML自动转为JS代码
2006/06/26 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
ASP.NET MVC中EasyUI的datagrid跨域调用实现代码
2012/03/14 Javascript
JavaScript高级程序设计(第3版)学习笔记 概述
2012/10/11 Javascript
js中匿名函数的创建与调用方法分析
2014/12/19 Javascript
JavaScript浮点数及运算精度调整详解
2016/10/21 Javascript
JS中正则表达式全局匹配模式 /g用法详解
2017/04/01 Javascript
JavaScript 中Date对象的格式化代码方法汇总
2017/09/06 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
原生js实现针对Dom节点的CRUD操作示例
2019/08/26 Javascript
微信小程序仿抖音短视频切换效果的实例代码
2020/06/24 Javascript
在pandas中一次性删除dataframe的多个列方法
2018/04/10 Python
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
python实现合并多个list及合并多个django QuerySet的方法示例
2019/06/11 Python
对python 中class与变量的使用方法详解
2019/06/26 Python
python tkinter图形界面代码统计工具
2019/09/18 Python
python NumPy ndarray二维数组 按照行列求平均实例
2019/11/26 Python
解决Numpy中sum函数求和结果维度的问题
2019/12/06 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
2020/11/17 Python
Django REST Framework 分页(Pagination)详解
2020/11/30 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
2020/12/07 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
SQL Server 2000数据库的文件有哪些,分别进行描述
2013/03/30 面试题
网络安全方面的面试题
2016/01/07 面试题
银行财务部实习生的自我鉴定
2013/11/27 职场文书
商场经理竞聘演讲稿
2014/01/01 职场文书
水污染治理工程专业自荐信
2014/06/21 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
opencv读取视频并保存图像的方法
2021/06/04 Python
【海涛DOTA解说】EVE女子战队独家录像加ZSMJ神牛两连发
2022/04/01 DOTA
Python实现自动玩连连看的脚本分享
2022/04/04 Python