的.htaccess重写通配符subsubdomain而params [英] .htaccess rewrite wildcard subsubdomain and params

查看:216
本文介绍了的.htaccess重写通配符subsubdomain而params的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想写一个mod_rewrite的工作,像这样

  • wildcard.subdomain.domain.com => subdomain.domain.com/data.php?q=wildcard
  • wildcard.subdomain.domain.com/?repeat=1 => subdomain.domain.com/data.php?q=wildcard&重复= 1
  • subdomain.domain.com => data.php
  • www.subdomain.domain.com => data.php

我已经在我的.htaccess迄今所做

 < IfModule mod_rewrite.c>
  选项​​+的FollowSymLinks
  RewriteEngine叙述上
  的RewriteCond%{HTTP_HOST} ^([^。] +)\。ABC \ .DEF \ .COM \ .BR $ [NC]
  的RewriteCond%1!^(WWW)$ [NC]
  重写规则^ * $ data.php Q =%1
< / IfModule>`
 

解决方案

请尝试以下:

 #这应该涵盖第一2箱子
  的RewriteCond%{HTTP_HOST} ^([^。] +)\。ABC \ .DEF \ .COM \ .BR $ [NC]
  的RewriteCond%1!^(WWW)$ [NC]
  重写规则^ $ /data.php?q=%1&%{QUERY_STRING} [L,QSA]

  #这应包括最后2
  的RewriteCond%{HTTP_HOST} ^([^。] +)\。ABC \ .DEF \ .COM \ .BR $ [NC]
  的RewriteCond%1 ^(WWW)$ [NC]
  重写规则^ $ /data.php?%{QUERY_STRING} [L,QSA]
 

请注意,这不执行任何操作在请求的情况下: wildcard.subdomain.domain.com/some/path/to/file.html 这只是比赛的请求URI的是 /

I'm trying to write a mod_rewrite to work like this

  • wildcard.subdomain.domain.com => subdomain.domain.com/data.php?q=wildcard
  • wildcard.subdomain.domain.com/?repeat=1 => subdomain.domain.com/data.php?q=wildcard&repeat=1
  • subdomain.domain.com => data.php
  • www.subdomain.domain.com => data.php

What I've done so far in my .htaccess

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^([^.]+)\.abc\.def\.com\.br$ [NC]
  RewriteCond %1 !^(www)$ [NC]
  RewriteRule ^.*$ data.php?q=%1 
</IfModule>`

解决方案

Try these:

  # This should cover the first 2 cases
  RewriteCond %{HTTP_HOST} ^([^.]+)\.abc\.def\.com\.br$ [NC]
  RewriteCond %1 !^(www)$ [NC]
  RewriteRule ^$ /data.php?q=%1&%{QUERY_STRING} [L,QSA]

  # This should cover the last 2
  RewriteCond %{HTTP_HOST} ^([^.]+)\.abc\.def\.com\.br$ [NC]
  RewriteCond %1 ^(www)$ [NC]
  RewriteRule ^$ /data.php?%{QUERY_STRING} [L,QSA]

Note that this does nothing in the cases where the request is: wildcard.subdomain.domain.com/some/path/to/file.html These only match request URI's that are /.

这篇关于的.htaccess重写通配符subsubdomain而params的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆