php url 重写

来源:互联网 发布:开场动画制作软件 编辑:程序博客网 时间:2024/04/30 05:59

摘自: http://wenku.baidu.com/view/921f8b8d680203d8ce2f24f9.html


在做项目时,有没有发现一个很不好的问题。如:你得访问地址为:http://localhost/test/index.php?id=1这样,是不是觉得这个链接不好,而且一眼就会被别人看出来你这个网站是用什么技术实现的,而且也不是很安全呢。是不是觉得www.baidu.com/aa/1/1这样的访问地址很清晰并且很眼馋嘛?下来就给大家看看如何实现吧。   
配置方面: 


1. 找到apache的安装目录下的conf下的httpd.conf文件,打开文件修改 
LoadModule rewrite_module modules/mod_rewrite.so这行代码,他前面有个#号,把#号删掉 


2. 还是那个文件,打开,找到 
<Directory /> 
    Options FollowSymLinks ExecCGI Indexes     

    AllowOverride None     

    Order deny,allow     

    Deny from all    

    Satisfy all 

</Directory> 
这个节点,把None改为All. 3. 重启apache服务 


4. 最关键的一点,在你得项目目录下创建.htaccess文件,文件没有名称,看上去只是后缀名 
具体创建方法不能直接创建,先创建个txt文件(其他的也行),然后另存问,把名字改为.htaccess,并且选所有文件,创建好后,就要制定规则了。 在文件里写代码: 
<IfModule mod_rewrite.c>  

    RewriteEngine on   //on为打开,off为关闭 
    RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$ index.php?action=$1&id=$2  

</IfModule> 
([a-zA-Z]{1,})-([0-9]{1,}).html$是规则,index.php?action=$1&id=$2是要替换的格式,$1代表第一个括号匹配的值,$2代表第二个,如此类推!! 


5. 创建一个php文件吧(这个文件当然要创建到你放.htaccess文件的项目中) 
<?php 
 echo "你的action:".$_GET['action'];  echo "你的id:".$_GET['id']; ?>. 
然后你在浏览器地址栏中访问:http://localhost/text/a-1.html,这个地址就相当于你访问http://localhost/text/index.php?action=a&id=1这样。是不是觉得这样比较美观呢。 
访问后的结果是你的action:a   你的id:1     


6.ok了,url重写就搞定了。这只是一个非常简单的例子,大家只要明白了这个例子,相信以大家举一反三的智商,应用到项目中没问题的。

0 0
原创粉丝点击