下载此文档

apache rewrite实现url的跳转和域名跳转.doc


文档分类:IT计算机 | 页数:约18页 举报非法文档有奖
1/18
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/18 下载此文档
文档列表 文档介绍
Apache Rewrite实现URL的跳转和域名跳转
Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的()和目录级的(.ess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rewrite模块。
基于服务器级的()有两种方法, on来打开rewrite功能;另一种是在局部里利用RewriteEngine on来打开rewrite功能,下面将会举例说明,需要注意的是,必须在每个virtualhost里用RewriteEngine on来打开rewrite功能。否则virtualhost里没有RewriteEngine on它里面的规则也不会生效。
基于目录级的(.ess), RewriteEngine on。
2、举例说明:
。, 避免相同内容的网页有多个指向的域名,如。
     NameVirtualHost :80
     ServerAdmin slj@
     DocumentRoot “/web”
     ServerName
     RewriteEngine on #打开rewirte功能
     RewriteCond %{HTTP_HOST} !^ [NC] #声明Client请求的主机中前缀不是, 其中[NC] 的意思是忽略大小写
     RewriteCond %{HTTP_HOST} !^ [NC] #,其中[NC] 的意思是忽略大小写
     RewriteCond %{HTTP_HOST} !^$ #声明Client请求的主机中前缀不为空
     RewriteRule ^(.*) / [L] #含义是如果Client请求的主机中的前缀符合上述条件,则直接进行跳转到/,[L]意味着立即停止重写操作,并不再应用其他重写规则。这里的.*是指匹配所有URL中不包含换行字符,()括号的功能是把所有的字符做一个
标记,(.*)字符。
的域名时跳转到http:
     RewriteEngine on
     RewriteCond %{HTTP_HOST} ^ [NC]
     RewriteRule ^(.*) / [L]
,新域名为, 更加简短好记。这时需要将原来的域名ss., 以及论坛所在地址ss./bbs/定向到新的域名,以便用户可以找到,并且使原来的论坛 URL 继续有效而不出现 404 未找到,比如原来的http://ss./bbs/tread-, 让它在新的域名下继续有效,点击后转发到http://bbs./tread-,而其他网页,如原先的http: //ss./purchase不会到二级域名bbs./purchase上,而是到 chase
按照这样的要求重定向规则应该这样写:
     RewriteEngine On
     RewriteCond %{REQUEST_URI} ^/bbs/
     RewriteRule ^bbs/(.*) http://bbs./$1 [R=permanent,L]
     RewriteCond %{REQUEST_URI} !^/bbs/
     RewriteRule ^(.*) /$1 [R=permanent,L]
mod_rewrite规则重写的标志一览
     1) R[=code](force redirect) 强制外部重定向
     强制在替代字符串加上http://thishost[:thisport]/,将用缺省的302 HTTP状态码。
     2) F(force URL to be forbidden)禁用URL,返回403HTTP状态码。
     3) G(force URL to be gone) 强制URL为

apache rewrite实现url的跳转和域名跳转 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数18
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小34 KB
  • 时间2018-08-05
最近更新