apache的 重写

1、检测Apache是否支持mod_rewrite
通过使用php提供的phpinfo()函数查看环境配置,通过ctrl+F查找'Load 


Modules',其中列出了所有apacheheader已经打开的模块,如果里面包


括'mod_rewrite',则已经支持,不需要设置。


如果没有开启'mod_rewrite',则打开目录 你的apache安装目


录'apache/conf/'下的httpd.conf文件,通过Ctrl+F查找到'LoadModule 


rewrite_module modules/mod_rewrite.so',将前面的'#'号删除即可。


如果没有找到,则到'LoadModule'区域,在最后一行加入'LoadModule 


rewrite_module modules/mod_rewrite.so'(必须独立一行),然后重启


Apache服务器即可。


2、在httpd.conf中配置虚拟主机
# Virtual hosts启用虚拟主机
Include conf/extra/httpd-vhosts.conf


3、httpd_vhosts.conf文件中,配置相应的选项。
<VirtualHost *:80>
  DocumentRoot "D:/www/aa/"
  ServerName www.zixue.com
  <Directory 'D:/www/aa/'>
      #Deny from All 403错误提示
      All from all
      #如果文件目录在apache目录外面,注释点options则,不能列表
      option +Indexs
      #下面这个表示可以去读取.htaccess文件,也可以直接在虚拟主机


中配置
      AllowOverride All
      RewriteEngine On
      RewriteRule new-id(\d).html$ error.php?id=$1
      #这里可以设置多个重写规则
      #
  </Directory>
</VirtualHost>


4、在相应的目录下编写.htaccess重写规则
如果是在Linux下可以直接创建
如果是在Windows平台,用记事本创建一个文件,比如bac.txt,然后另存


为.htaccess文件即可


5、重写规则,可以直接将在配置虚拟主机的<Directory>段配置。








rewrite规则介绍
我们新建一个.htaccess文件后,就在里面写入内容:
RewriteEngine on #rewriteengine为重写引擎开启 on为打开,off为关闭
快速入门案例
RewriteRule ([0-9]{1,})$ index.php?id=$1


讲解:
RewriteRule是重写规则,支持正则表达式的,上面的([0-9]{1,})是值由


数字组成,$是结束标志,说明是以数字结束!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值