Apache域名跳转----配置rewrite模块

本文涉及的产品
.cn 域名,1个 12个月
简介: Apache域名跳转----配置rewrite模块

Apache域名跳转----配置rewrite模块

1.rewrite模块简介

Apache中rewrite规则代码均写在<ifModule mod_rewrite>模块下.
Web服务可能需要多个域名,且彼此间要有主次,输入次域名后会自动转入主域名进行访问.
状态码:301 永久跳转;302 暂时跳转;

2.修改一下主配置文件

vi /usr/local/apache2/conf/httpd.conf
• 1
1)搜索:/rewrite
取消这行的注释
LoadModule rewrite_module modules/mod_rewrite.so
2)搜索:/httpd-vhost
取消这行的注释
Include conf/extra/httpd-vhosts.conf

3.简单的rewrite规则配置案例

vi /usr/local/apache2/conf/extra/httpd-vhosts.conf
# 添加如下:( 无论访问www.cat.com或访问www.god.com都会跳转到www.007.com)
<VirtualHost *:80>
DocumentRoot "/tmp/007" 
<IfModule mod_rewrite.c>
    RewriteEngine on              # 打开rewrite功能
    RewriteCond  %{HTTP_HOST} ^www.cat.com$ [OR]
    RewriteCond  %{HTTP_HOST} ^www.god.com$
    RewriteRule ^/(.*)$ http://www.007.com/$1 [R=301,L]
</IfModule>
</VirtualHost>

4.语法检测

#检查配置文件是否有错误
/usr/local/apache2/bin/apachectl  -t

5.添加本地解析

vi /etc/hosts 添加以下内容:
 ip地址 ww.007.com 
 ip地址 www.cat.com 
 ip地址 www.god.com

6.重启http服务

/usr/local/apache2/bin/apachectl  restart

7.测试

curl www.cat.com
或者
curl -I www.cat.com

8.相关rewrite规则

1)禁止指定user_agent
RewriteCond  %{HTTP_USER_AGENT} ^.*curl.*  [NC,OR]    # 禁止curl浏览器访问,NC不区分大小写
RewriteCond  %{HTTP_USER_AGENT} ^.*chrome.*  [NC]     # 禁止chrome浏览器访问,NC不区分大小写
RewriteRule  .* -  [F]                                # F 禁止URL,返回403HTTP状态码

2)限制某个目录

RewriteCond  %{REQUEST_URI} ^.*/tmp/.*  [NC]         # 禁止访问/tmp目录
 RewriteRule  .* -  [F]              

9.rewrite变量

%{HTTP_USER_AGENT}                                    # 访问的user_agent
%{HTTP_HOST}                                          # 当前访问的网址,只指前缀。如:www.cat.com,不包含"http://"等
%{REQUEST_URI}                                        # 访问的相对地址,就是域名之后的部分,格式上包含最前面的"/"
如:www.007.com/catgod007/index.html                   # www.007.com表示HOST,catgod007/index.html表示URI

感谢大家,点赞,收藏,关注,评论!

目录
相关文章
|
2月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
298 1
|
27天前
|
域名解析 监控 网络协议
slb配置域名注意事项
slb配置域名注意事项
35 11
|
26天前
|
域名解析 监控 安全
slb配置检查域名说明注意事项
slb配置检查域名说明注意事项
29 5
|
26天前
|
负载均衡 安全 网络安全
slb配置健康检查域名
slb配置健康检查域名
26 4
|
26天前
|
负载均衡 应用服务中间件
slb何时需要配置健康检查域名
slb何时需要配置健康检查域名
26 3
|
1月前
|
运维 监控 安全
在实际应用中,如何选择基于不同域名还是不同 IP 进行代理多服务的配置?
综上所述,在实际应用中选择基于不同域名还是不同 IP 进行代理多服务的配置,需要根据具体的业务需求、可扩展性、性能、安全性以及维护和管理成本等多方面因素进行综合考虑,权衡利弊,选择最适合自己系统架构和运营需求的配置方式。
|
2月前
|
存储 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
44 1
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(一)
|
2月前
|
程序员 开发工具 Android开发
Android|WebView 禁止长按,限制非白名单域名的跳转层级
如何限制 WebView 仅域名白名单网址能随意跳转,并禁用长按选择文字。
44 2
|
2月前
|
缓存 前端开发 应用服务中间件
CORS跨域+Nginx配置、Apache配置
CORS跨域+Nginx配置、Apache配置
238 7
|
2月前
|
消息中间件 分布式计算 druid
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
大数据-152 Apache Druid 集群模式 配置启动【下篇】 超详细!(二)
45 2

推荐镜像

更多