欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Apache服务器中使用.htaccess实现伪静态URL的方法

程序员文章站 2023-11-09 16:04:34
很多朋友可能是空间也就是虚拟主机,自己就没有权限来管理apache的httpd.conf文件了,自然就不太可能可以在这上面写静态规则了,下面我们可以让主机商开启支持.hta...

很多朋友可能是空间也就是虚拟主机,自己就没有权限来管理apache的httpd.conf文件了,自然就不太可能可以在这上面写静态规则了,下面我们可以让主机商开启支持.htaccess方法,这样就可以自己写了。

首先配置服务器启动重写模块
打开 apache 的配置文件 httpd.conf 。
将#loadmodule rewrite_module modules/mod_rewrite前面的#去掉。
保存后重启apache


写重写规则
举例说明,test.php里的代码为

<?php
$id=$_get["id"];
echo $id;
?> 

功能就是接受url里的id参数,并在页面显示。
首先用记事本(如果不行就用editplus)新建一个文档,并保存为.htaccess,在里面写入如下代码

.<ifmodule mod_rewrite.c>
.rewriteengine on
.rewritebase /
.rewriterule ^t_(.*).html$ test.php?id=$1 [l]
.</ifmodule> 

具体解释可以查看apache手册。下载apache2.2手册
第4行 ^t_(.*).html$ 描述你输入的url地址, test.php?id=$1  其实际要访问的地址
例如当您在浏览器中输入(假设您的test.php和.htaccess文件都在您服务器的mytest文件夹下)localhost/mytest/t_1.html 则在浏览器中将输出 1,
如果输入为 localhost/mytest/t_sophp.html 则浏览器输出sophp
第一个地址实际访问的是localhost/mytest/test.php?id=1
第二个实际访问的是 localhost/mytest/test.php?id=sophp

重写完规则后,将您网页中以前都为传参数的url链接改为您修改后的规则样式就成功了。
如果自己买的空间支持重写的话,只要把.htaccess 文件传到根目录即可。