Apache 开启rewrite模式(重写模式)

.htaccess的主要作用就是实现url改写,也就是当浏览器通过url访问到服务器某个文件夹时,作为主人,我们可以来接待这个url,具体 地怎样接待它,就是此文件的作用。所有的访问都是通过URL实现,所以.htaccess的作用非同小可。正因为此,所以一般地网站通过设 置.htaccess,通过一个十分友好的url吸引用户进来,然后用.htaccess把用户带到需要访问的位置。
可以使用cmd创建.htaccess文件

cmd指令

要想使用这个强大功能,就得开启apache里面的重写模块。

conf.png

修改虚拟主机配置文件,增加 AllowOverride All

<VirtualHost *:80>
    ServerName www.error.com
    DocumentRoot "D:\www\error"
    <Directory "D:\www\error">
            #全部允许
            allow from all
            #没有默认首页,展示脚本的列表
            Options indexes
            #配置默认首页  
            DirectoryIndex index.php index.html
            #重写模式权限
            AllowOverride All
            #访问目录有权限
            Require all granted     
    </Directory>
</VirtualHost>

.htaccess文件示例

#判断是否开启重写模块
<IfModule mod_rewrite.c>
#开启重写引擎
  RewriteEngine on
  #RewriteRule   ^(.*).html $1.php
  #RewriteRule (\d+).html  $1.php
  #重写商品信息的链接
  #RewriteRule  goods/(\d+).html index.php/Home/Goods/goodslist/id/$1
  #RewriteRule  abc.html abcd.php
  #[R]外部跳转  url会同时改变
  #RewriteRule  abc.html /abcd.php [G]
  #重写把参数传输过去
  #RewriteRule (\d+).html  /static.php?id=$1 [QSA]

  #防止盗链
  #满足重写重写 再执行重写规则
  #%{HTTP_REFERER} 判断请求的来源
  RewriteCond %{HTTP_REFERER}  !cache.php59.com [NC]
  #执行重写规则
  #() 正则子表达式  |或者  满足其一即可
  RewriteRule (jpg|png|gif) image/2.gif
</IfModule>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 此文章转载~ Apache伪静态(Rewrite).htaccess文件详解 Htaccess(超文本访问)是一个...
    bornfreekiss阅读 4,145评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,948评论 18 139
  • 2017-06-30 今天,是六月的最后一天了,也是过了2017年的半年。 回顾了整个半年,发现我一点都没...
    筱德阅读 254评论 1 3
  • 每一個重要的日子裡儀式感都是該有的 為了區別無數個想不起來怎麼度過的渾沌日夜 是否需要一次性補足多年來不開趴不愛過...
    香蕉高興阅读 186评论 0 2
  • 开启内心喜悦的引擎,安驻身心,轻松愉快地回忆我今天种下的好种子。 我的人生使命:希望及由我的好种子开花结果成为幸福...
    快乐小屋刘丽华阅读 80评论 0 2