西湖鱼 发表于 2018-11-19 07:37:43

Apache配置——域名301跳转

  www.test.com可以访问论坛,www.aaa.com也可以访问论坛,这两个肯定要分一个主次,意思是说虽然有两个域名都可以访问站点,但是我只需要有一个域名去给大家提供服务就可以了。为了区分主次,有一种方法,也就是域名的跳转,比如说我们访问www.aaa.com ,我们让它默认跳到www.test.com去。
  ## 修改配置文件
  # vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
     
        RewriteEngine on
        RewriteCond %{HTTP_HOST} ^www.aaa.com$
        RewriteRule ^/(.*)$ http://www.test.com/$1
     
http://note.youdao.com/yws/res/4753/WEBRESOURCEebc0d3db2af5ad8fb9431c89ebd6e1cd
  解释说明:
  mod_rewrite 此模块rewrite_module (shared)
  RewriteEngine 引擎
  RewriteCond 匹配条件 %{HTTP_HOST}主机名
  多个域名跳转
  ① RewriteCond %{HTTP_HOST} ^www.aaa.com$
     RewriteCond %{HTTP_HOST} ^www.bbbb.com$
  ② RewriteCond %{HTTP_HOST} !^www.test.com$(取反,只要不是此域名全跳转)
  RewriteRule 设置匹配规则
  301表示重定向跳转(永久)302(临时)
  L即last,表示结束了,结束语
  ## 修改配置文件后测试且重新加载
  # /usr/local/apache2/bin/apachectl -t
  Syntax OK
  # /usr/local/apache2/bin/apachectl graceful
  ## 测试
  # curl -x192.168.219.128:80 www.aaa.com -I   
  HTTP/1.1 301 Moved Permanently
  Date: Sun, 23 Aug 2015 09:13:16 GMT
  Server: Apache/2.2.16 (Unix) DAV/2 PHP/5.3.28
  Location: http://www.test.com/
  Content-Type: text/html; charset=iso-8859-1
  # curl -x192.168.219.128:80 www.bbb.com -I   
  HTTP/1.1 301 Moved Permanently
  Date: Mon, 31 Oct 2016 23:30:03 GMT
  Server: Apache/2.2.16 (Unix) DAV/2 PHP/5.3.28
  Location: http://www.test.com/
  Content-Type: text/html; charset=iso-8859-1
  ## 若出现401问题,是因为用户名密码认证:
  # curl -u wyy:123456 -x192.168.219.128:80 www.aaa.com/abc -I
  




页: [1]
查看完整版本: Apache配置——域名301跳转