设为首页 收藏本站
查看: 848|回复: 0

[经验分享] apache的rewrite详解

[复制链接]

尚未签到

发表于 2018-11-26 06:43:18 | 显示全部楼层 |阅读模式
  用rewrite可实现的部分:URL根目录搬迁,多目录查找资源,阻止盗连你的图片,拒绝某些主机访问,基于时间重写,据浏览器类型重写,动态镜像远程资源,外部重写程序模板,等等
  详见下表:
目标重写设置说明规范化URLRewriteRule ^/~([^/]+)/?(.*) /u/$1/$2 [R]将/~user重写为/u/user的形式 RewriteRule ^/([uge])/([^/]+)$ /$1/$2/ [R]将/u/user末尾漏掉的/补上   规范化HostNameRewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]域名不合格 RewriteCond %{HTTP_HOST} !^$不空 RewriteCond %{SERVER_PORT} !^80$不是80端口 RewriteRule ^/(.*) http://fully.qualified.domain.name:%{SERVER_PORT}/$1 [L,R]重写 RewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]  RewriteCond %{HTTP_HOST} !^$  RewriteRule ^/(.*) http://fully.qualified.domain.name/$1 [L,R]    URL根目录转移RewriteEngine on  RewriteRule ^/$ /e/www/ [R]从/移到/e/www/   末尾目录补斜线RewriteEngine on (目录范围内)RewriteBase /~quux/  RewriteRule ^foo$ foo/ [R]/~quux/foo是一个目录,补/    RewriteEngine on  RewriteBase /~quux/  RewriteCond %{REQUEST_FILENAME} -d如果请文件名是个目录 RewriteRule ^(.+[^/])$ $1/ [R]URL末尾不是斜线时补上   Web集群RewriteEngine on  RewriteMap user-to-host txt:/path/to/map.user-to-host用户-服务器映射 RewriteMap group-to-host txt:/path/to/map.group-to-host组-服务器映射 RewriteMap entity-to-host txt:/path/to/map.entity-to-host实体-服务器映射 RewriteRule ^/u/([^/]+)/?(.*) http://${user-to-host:$1|server0}/u/$1/$2用户均衡 RewriteRule ^/g/([^/]+)/?(.*) http://${group-to-host:$1|server0}/g/$1/$2组均衡 RewriteRule ^/e/([^/]+)/?(.*) http://${entity-to-host:$1|server0}/e/$1/$2实体均衡 RewriteRule ^/([uge])/([^/]+)/?$ /$1/$2/.www/  RewriteRule ^/([uge])/([^/]+)/([^.]+.+) /$1/$2/.www/$3\    URL根目录搬迁RewriteEngine on  RewriteRule ^/~(.+) http://newserver/~$1 [R,L]到其它服务器   所用户名首字母分RewriteEngine on  RewriteRule ^/~(([a-z])[a-z0-9]+)(.*) /home/$2/$1/.www$3内一层括号为$2   NCSA imagemap移RewriteEngine on 植为mod_imapRewriteRule ^/cgi-bin/imagemap(.*) $1 [PT]    多目录查找资源RewriteEngine on  # first try to find it in custom/…  RewriteCond /your/docroot/dir1/%{REQUEST_FILENAME} -f  RewriteRule ^(.+) /your/docroot/dir1/$1 [L]  # second try to find it in pub/…  RewriteCond /your/docroot/dir2/%{REQUEST_FILENAME} -f  RewriteRule ^(.+) /your/docroot/dir2/$1 [L]  # else go on for other Alias or Alias directives,  RewriteRule ^(.+) – [PT]    据URL设置环境变量RewriteEngine on  RewriteRule ^(.*)/S=([^/]+)/(.*) $1/$3 [E=STATUS:$2]    虚拟主机RewriteEngine on  RewriteCond %{HTTP_HOST} ^www\.[^.]+\.host\.com$基于用户名 RewriteRule ^(.+) %{HTTP_HOST}$1 [C]  RewriteRule ^www\.([^.]+)\.host\.com(.*) /home/$1$2    内外人有别RewriteEngine on  RewriteCond %{REMOTE_HOST} !^.+\.ourdomain\.com$基于远程主机 RewriteRule ^(/~.+) http://www.somewhere.com/$1 [R,L]    错误重定向RewriteEngine on  RewriteCond /your/docroot/%{REQUEST_FILENAME} !-f不是regular文件 RewriteRule ^(.+) http://webserverB.dom/$1    程序处理特殊协议RewriteRule ^xredirect:(.+) /path/to/nph-xredirect.cgi/$1 \Xredirect协议 [T=application/x-httpd-cgi,L]    最近镜像下载RewriteEngine on  RewriteMap multiplex txt:/path/to/map.cxan顶级域名与最近ftp服务器映射 RewriteRule ^/CxAN/(.*) %{REMOTE_HOST}::$1 [C]  RewriteRule ^.+\.([a-zA-Z]+)::(.*)$ ${multiplex:$1|ftp.default.dom}$2 [R,L]据顶级域名不同提供不同的FTP服务器   基于时间重写RewriteEngine on  RewriteCond %{TIME_HOUR}%{TIME_MIN} >0700  RewriteCond %{TIME_HOUR}%{TIME_MIN}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-639555-1-1.html 上篇帖子: Apache的ReWrite的应用 下篇帖子: Apache服务器处理404错误页面技巧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表