浅谈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 相关文章推荐
Windows IIS PHP 5.2 安装与配置方法
Jun 08 PHP
php方法调用模式与函数调用模式简例
Sep 20 PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
Jul 01 PHP
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
Apr 22 PHP
解析用PHP读写音频文件信息的详解(支持WMA和MP3)
May 10 PHP
PHP取二进制文件头快速判断文件类型的实现代码
Aug 05 PHP
如何使用php输出时间格式
Aug 31 PHP
php后台如何避免用户直接进入方法实例
Oct 15 PHP
php中使用array_filter()函数过滤空数组的实现代码
Aug 19 PHP
Yii入门教程之Yii安装及hello world
Nov 25 PHP
php数组添加与删除单元的常用函数实例分析
Feb 16 PHP
php基于session实现数据库交互的类实例
Aug 03 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.MVC的模板标签系统(四)
2006/09/05 PHP
比file_get_contents稳定的curl_get_contents分享
2012/01/11 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
禁止直接访问php文件代码分享
2020/05/05 PHP
Javascript 继承实现例子
2009/08/12 Javascript
jquery中实现简单的tabs插件功能的代码
2011/03/02 Javascript
jQuery效果 slideToggle() 方法(在隐藏和显示之间切换)
2011/06/28 Javascript
浅析JS中document对象的一些重要属性
2014/03/06 Javascript
使用JavaScript+canvas实现图片裁剪
2015/01/30 Javascript
特殊日期提示功能的实现方法
2016/06/16 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
javascript轮播图算法
2016/10/21 Javascript
JavaScript中Math对象的方法介绍
2017/01/05 Javascript
利用node.js写一个爬取知乎妹纸图的小爬虫
2017/05/03 Javascript
在使用JSON格式处理数据时应该注意的问题小结
2017/05/20 Javascript
记React connect的几种写法(小结)
2018/09/18 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
ubuntu安装mysql pycharm sublime
2018/02/20 Python
Django中redis的使用方法(包括安装、配置、启动)
2018/02/21 Python
python模块之subprocess模块级方法的使用
2019/03/26 Python
kafka-python 获取topic lag值方式
2019/12/23 Python
jupyter notebook 实现matplotlib图动态刷新
2020/04/22 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
HTML5 新旧语法标记对我们有什么好处
2012/12/13 HTML / CSS
Surfdome西班牙:世界上最受欢迎的生活方式品牌
2019/02/13 全球购物
美国渔具店:FishUSA
2019/08/07 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
出差报告范文
2014/11/06 职场文书
2015年收银员个人工作总结
2015/04/01 职场文书
少先队工作总结2015
2015/05/13 职场文书
PHP中->和=>的意思
2021/03/31 PHP
在K8s上部署Redis集群的方法步骤
2021/04/27 Redis
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript