文档章节

apache rewrite(重定向)

ali安东尼
 ali安东尼
发布于 2017/07/04 14:40
字数 594
阅读 5
收藏 0

很多时候,由于项目变更的需要,我们会将一个网站的域名变更为另外一个域名,又或者是一个地址转变为另外一个地址。而在项目里进行跳转并不是一个明智的选择,这个时候我们就可以使用到apache的mod_rewrite模块。 mod_rewrite 提供了基于正则表达式规则动态修改传入的请求的 URL 的方法。 这允许你以自己喜欢的任意方法映射任意 URL 到你的内部 URL 结构。 当然启用它的第一步就是要加载相关的模块,你可以打开httpd.conf将mod_rewrite前的#号注释掉。 LoadModule rewritemodule modules/modrewrite.so 然后你需要重启apache服务器,这样rewrite模块就开启了。 这个模块可以在服务器上下文 (httpd.conf),虚拟主机上下文 ( 指令块),目录上下文 (.htaccess 文件和 指令块) 对完整的 URL (包含目录信息部分和查询字符串部分) 操作。 重写结果可以进行多种规则处理,如:内部的后续处理,外部请求重定向,甚至透过内部代理, 这取决于你为规则附加的标志。 而rewrite规则中的标志通常有以下几种:

  1. R 强制外部重定向
  2. F 禁用URL,返回403HTTP状态码。
  3. G 强制URL为GONE,返回410HTTP状态码。
  4. P 强制使用代理转发。
  5. L 表明当前规则是最后一条规则,停止分析以后规则的重写。
  6. N 重新从第一条规则开始运行重写过程。
  7. C 与下一条规则关联
  8. T=MIME-type(force MIME type) 强制MIME类型
  9. NS 只用于不是内部子请求
  10. NC 不区分大小写
  11. QSA 追加请求字符串
  12. NE 不在输出转义特殊字符 %3d$1 等价于 =$1 常用的rewrite规则实例 301重定向 将www.aaa.com 301 到 www.bbb.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.aaa.com [NC]
RewriteRule ^(.*) http://www.bbb.com/ [R=301,L]

伪静态 /info/info.php?infoid=100转换为/info/100.html个格式

RewriteEngine on
RewriteRule index.html index.php
RewriteRule (\d+).html$ info.php\?infoid=$1

内部重定向 通过 http://natserver/forum 来访问webserver上面提供的论坛服务,而forum目录在 /var/www/html 下

RewriteEngine on
RewriteBase /forum/
RewriteRule (.*) http://webserverip/$1 [P,L]
由睿江云提供,想了解更多,请登陆www.eflycloud.com

© 著作权归作者所有

共有 人打赏支持
ali安东尼
粉丝 3
博文 192
码字总数 173101
作品 0
广州
私信 提问
nginx 301 302 重定向

nginx 301 302跳转的详细说明 server {   listen 80;   server_name abc.com;   rewrite ^/(.*) http://www.abc.com/$1 permanent;   access_log off;   } last – 基本上都用这个......

柠檬草的味道
2014/04/10
0
0
nginx的301与302如何配置

转自:http://blog.sina.com.cn/s/blog5d73ba76010145rr.html 首先看一个完整代码示例,关于nginx 301 302跳转的。 301跳转设置: server { listen 80; servername 123.com; rewrite ^/(.) ......

小杨_Ivan
2017/02/09
0
0
Apache的Rewrite详解

Rewrite的需求 在用Apache做web服务器的时候,有的时候需要将输入的URL转换成另一个URL这种需求。比如用CodeIgniter框架开发web应用的时候,我们访问的所有路径都要经过index.php,由这个ind...

我在睡觉
2016/11/02
0
0
nginx 301 302跳转配置方法 与 总结

首先看一个完整代码示例,关于nginx 301 302跳转的。 301跳转设置: 302跳转设置: 在看下关于nginx 301 302跳转的详细说明文档 last – 基本上都用这个Flag。 break – 中止Rewirte,不在继...

游鱼彩虹
2016/12/26
4
0
Nginx配置文件说明

-- 重定向Nginx错误页面的方法 -- 在nginx的配置文件中,可以对发生错误是的重定向页面进行配置,在nginx.conf文件中有下面的配置信息: error_page 404 /404.html; 这个404.html保证在nginx...

hengfeng_su
2014/08/22
249
0

没有更多内容

加载失败,请刷新页面

加载更多

Linux Wireshark普通用户启动使用方案

当系统安装好Wireshark后请正常启动是否可以进行正常使用,如果不行请参考下列指导 向系统添加一个用户组 sudo groupadd wireshark //如提示此组存在可跳过 将指定用户添加到这个组中 sudo...

CHONGCHEN
今天
2
0
CSS 选择器参考手册

CSS 选择器参考手册 选择器 描述 [attribute] 用于选取带有指定属性的元素。 [attribute=value] 用于选取带有指定属性和值的元素。 [attribute~=value] 用于选取属性值中包含指定词汇的元素。...

Jack088
今天
2
0
数据库篇一

数据库篇 第1章 数据库介绍 1.1 数据库概述  什么是数据库(DB:DataBase) 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据...

stars永恒
今天
4
0
Intellij IDEA中设置了jsp页面,但是在访问页面时却提示404

在Intellij IDEA中设置了spring boot的jsp页面,但是在访问时,却出现404,Not Found,经过查找资料后解决,步骤如下: 在Run/Debug Configurations面板中设置该程序的Working Directory选项...

uknow8692
昨天
4
0
day24:文档第五行增内容|每月1号压缩/etc/目录|过滤文本重复次数多的10个单词|人员分组|

1、在文本文档1.txt里第五行下面增加如下内容;两个方法; # This is a test file.# Test insert line into this file. 分析:给文档后增加内容,可以用sed 来搞定;也可以用while do done...

芬野de博客
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部