设为首页收藏本站新闻投稿

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 478|回复: 4

[教程] mod_rewrite example [复制链接]

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

帖子
2836
精华
2
声望
12984 点
金币
2999 Mold
被赞许
28 次
注册时间
2006-4-28

Mod中国同盟社至高荣誉

发表于 2011-6-24 18:04:23 |显示全部楼层
今天试了很久终于可以实现Apache的伪静态效果了

首先得开启mod_write模块

主要就是怎么写这个.htaccess文件了

里面的正则表达式以及很多规则真的很强大很复杂

就连Apache上的文档也说:

    但是,所有这些功能和灵活性带来一个问题,那就是复杂性,因此,不要指望一天之内就能看懂整个模块。

下面做一个小小的example

真实地址是:http://localhost/index.php?id=1&category=linux

被伪静态后的地址为:

    http://localhost/linux/1/

其中index.php文件是这样写的:
  1.     <?php
  2.     header(‘Content-Type:text/html;charset=utf8′);
  3.     echo “这里是id:”.$_GET['id'];
  4.     echo “<br />”;
  5.     echo “这里是分类:”.$_GET['category'];
  6.     echo “<br />”;
  7.     ?>
复制代码
.htaccess文件是这样写的:
  1.     RewriteEngine On
  2.     ReWriteRule (.*)/(.*)/ index.php?id=$2&category=$1
复制代码
其中的$1和$2用Apache文档里的话说就是参数
最后我们就可以实现http://localhost/linux/1/的效果了
这个算是为后面的create crumb做铺垫吧

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
654
精华
0
声望
2086 点
金币
145 Mold
被赞许
9 次
注册时间
2011-4-24

可爱小猫 懒人勋章

发表于 2011-6-24 21:20:11 |显示全部楼层
不懂                来支持个
手再伸出来就砍了他

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
483
精华
1
声望
3727 点
金币
607 Mold
被赞许
11 次
注册时间
2009-7-15
发表于 2011-6-24 23:36:46 |显示全部楼层
伪静态地址,用tomcat的话也只需要修改下配置文件
http://hi.baidu.com/ethan_xue 博客 cs修改教程

使用道具 举报

Rank: 1

帖子
6
精华
0
声望
6 点
金币
1 Mold
被赞许
0 次
注册时间
2011-6-28
发表于 2011-6-28 12:14:29 |显示全部楼层
虽然不懂,依然支持下!
广州科士威  http://www.tetway.com

使用道具 举报

头像被屏蔽

禁止发言

帖子
74
精华
0
声望
48 点
金币
-28 Mold
被赞许
-4 次
注册时间
2011-8-26
发表于 2011-8-28 16:44:21 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

回顶部