常春岛资源网 Design By www.syssdc.com
比如,下面,我要实现这样的URL:
http://xxx.com/0725
http://xxx.com/0726
http://xxx.com/0727
…
上面xxx.com是一个记录《今天是》这样的历史内容的一个测试站点。上面链接的意思,就是显示07月25日的历史上发生了什么事情,类似这样。这样看起来就很美观、整齐了。要不然,可能的地址就是:
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
…
现在我就是要实现把 index.php?today= 隐藏掉。以下是代码:
1..htaccess 文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9]+)$ /index.php?today=$1
</IfModule>
粗体字这里我说明一下,其它的按这个格式吧,具体我现在也不理解。
[0-9]的意思是,参数只能是0~9这些数字,如果你要包含任何字符,就改为:
RewriteRule ^(.+)$ /index.php?today=$1
这里[0-9]改为了. ,这个.就代表任意字符。当然复杂的还很复杂,我们暂时不管。
2.index.php文件
复制代码 代码如下:
<?php
//rewrite 测试
$uid =$_REQUEST['today'];
?>
<HTML>
<HEAD>
<TITLE>rewrite 测试</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080">
今天是<?php echo $today;?>,看看历史上的今天都发生了什么事情?<br>
……
</BODY>
</HTML>
这里参数就会传递给index.php文件里的$today,在这个程序内,你就可以根据参数,进行处理,如查询数据库啦、做运算啦等,然后再显示相应的数据出来,就可以了。
实现方法2
复制代码 代码如下:
<?php
//url示例:soft.php/1,100,8630.html
//利用server变量 取得PATH_INFO信息 该例中为 /1,100,8630.html 也就是执行脚本名后面的部分
if(@$path_info =$_SERVER["PATH_INFO"]){
if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){
$gid =intval($arr_path[1]); //取得值 1
$sid =intval($arr_path[2]); //取得值100
$softid =intval($arr_path[3]); //取得值8630
//相当于soft.php?gid=1&sid=100&softid=8630
}else die("Path:Error!");
}else die("Path:Nothing!");
echo($gid);
echo("<br>");
echo($sid);
echo("<br>");
echo($softid);
?>
http://xxx.com/0725
http://xxx.com/0726
http://xxx.com/0727
…
上面xxx.com是一个记录《今天是》这样的历史内容的一个测试站点。上面链接的意思,就是显示07月25日的历史上发生了什么事情,类似这样。这样看起来就很美观、整齐了。要不然,可能的地址就是:
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
…
现在我就是要实现把 index.php?today= 隐藏掉。以下是代码:
1..htaccess 文件
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9]+)$ /index.php?today=$1
</IfModule>
粗体字这里我说明一下,其它的按这个格式吧,具体我现在也不理解。
[0-9]的意思是,参数只能是0~9这些数字,如果你要包含任何字符,就改为:
RewriteRule ^(.+)$ /index.php?today=$1
这里[0-9]改为了. ,这个.就代表任意字符。当然复杂的还很复杂,我们暂时不管。
2.index.php文件
复制代码 代码如下:
<?php
//rewrite 测试
$uid =$_REQUEST['today'];
?>
<HTML>
<HEAD>
<TITLE>rewrite 测试</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080">
今天是<?php echo $today;?>,看看历史上的今天都发生了什么事情?<br>
……
</BODY>
</HTML>
这里参数就会传递给index.php文件里的$today,在这个程序内,你就可以根据参数,进行处理,如查询数据库啦、做运算啦等,然后再显示相应的数据出来,就可以了。
实现方法2
复制代码 代码如下:
<?php
//url示例:soft.php/1,100,8630.html
//利用server变量 取得PATH_INFO信息 该例中为 /1,100,8630.html 也就是执行脚本名后面的部分
if(@$path_info =$_SERVER["PATH_INFO"]){
if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){
$gid =intval($arr_path[1]); //取得值 1
$sid =intval($arr_path[2]); //取得值100
$softid =intval($arr_path[3]); //取得值8630
//相当于soft.php?gid=1&sid=100&softid=8630
}else die("Path:Error!");
}else die("Path:Nothing!");
echo($gid);
echo("<br>");
echo($sid);
echo("<br>");
echo($softid);
?>
标签:
ReWrite,学习笔记
常春岛资源网 Design By www.syssdc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
常春岛资源网 Design By www.syssdc.com
暂无评论...
更新日志
2024年05月20日
2024年05月20日
- 智中之宝新计划怎么触发?任务完成攻略
- 吴业坤.2015-Kwan.Gor【星娱乐】【FLAC分轨】
- 陈雪凝.2024-我新长出的犄角(EP)【少城时代】【FLAC分轨】
- 林志颖.1994-火热的心【飞碟】【WAV+CUE】
- 半糖初恋
- 大脚野人日落 Sasquatch Sunset
- 独角兽塞尔玛 Thelma the Unicorn
- 群星《世界顶级汽车音响试音王(嗨歌王)24K金碟》16CD[WAV+CUE][7.9G]
- 《曾宝仪4CD合集》[WAV+CUE][2.3G]
- 周杰伦《八度空间》台湾手版[WAV+CUE][475M]
- 咏月风雅前期怎么玩 前期组队玩法解析
- 咏月风雅攻略大全 新手入门必看攻略
- 咏月风雅公测福利大全 有哪些奖励
- dnf装备成长攻略
- 鸣潮丹瑾适配武器选什么 丹瑾四星五星武器推荐