thinkphp 如何去除url中的index.php
2015-11-02 00:21
435 查看
使用 thinkphp 开发的应用的 url 中通常都会带个 index.php ,如果我们 需要伪静态或者做 SEO 优化的时候,这个是非常不好看也没有意义的。那么我们 该如何去除 thinkphp 应用 url 中的 index.php 呢? 对于这个问题我们可以通过URL重写的方式解决,当然这个是需要服务器开启 URL_REWRITE 模块才可以的。所以进行下面的步骤前请确定你的服务器是否已 经开启了或者是否能开启 URL_REWRITE 。 (1)如果没有开启 URL_REWRITE,则你需要找到 Apache 中的 httpd.conf 这个配置文件,找到下面这行: #LoadModule rewrite_module modules/mod_rewrite.so 把前面的警号去掉,然后继续找到下面这句: AllowOverride None 将所有找到的以上语句都改为:AllowOverride All 以上修改完毕然后重启 Apache 服务器即可。 (2)在应用的根目录下面新建一个 .htaccess 文件。在文件里面加入如下代码: 查看代码 打印 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule> 其实以上就已经实现了去除 url 中的 index.php 字符直接访问应用了。但是 仅仅以上两步操作还会出现的一个问题就是 thinkphp 的常量 __URL__ 中还 是会自动带上 index.php 这段字符串,彻底解决这个问题的办法是在项目的配 置文件里加上如一条如下配置: 查看代码 打印 'URL_MODEL'=>'2' 至此 thinkphp 应用 url 中的 index.php 就彻底无影无踪了。 注意:在 windows 下不能直接建立 .htaccess 这种文件,你可以先随便建立 一个文件(如:www.phpernote.com.txt),然后在DOS里面输入如下命令: rename www.phpernote.com.txt .htaccess
相关文章推荐
- php防止用户重复提交表单
- PHP就业情况分析
- 浅谈PHP中foreach/in_array的使用
- PHP中Http协议post请求参数
- php+ajax实现无刷新数据分页的办法
- php获取远程文件内容的函数
- PHP函数引用返使用说明
- PHP自定义XML类实现数组到XML文件的转换
- PHP从数据库中取得数据并放入数组(PDO)
- 转换流InputStreamReader、OutputStreamWriter
- php中的一些不常见的问题foreach/in_array[开发篇]
- 如何对PHP文件进行加密——ZendGuard加密与ZendLoader解密
- php函数fgets读取文件
- PHP中的错误处理&自定义错误处理方法
- Thinkphp列表搜索排序-----查
- leetcode-01 twoSum php实现
- PHP mysql 事务处理实例
- Thinkphp增加操作(Controller到模型Model的逻辑)
- php中对MYSQL操作之事务控制,回滚
- php mysql事务处理回滚操作