doushupu2521
2019-06-23 19:44
浏览 62
已采纳

如何使用htaccess将URL重定向到动态子域?

First of all.I would like to ask that how to make subdomain redirection using htaccess. www.samcheck.com/www/google.com to google.com.samcheck.com

I have tried all the solution available on the stackoverflow.But none of the solutions worked for me.

As well as the URL is https://sampcheck.com/www/google.com , I want it to be https://google.com.sampcheck.com so that it shows the content of main url. Thank in advance :)

RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
     RewriteRule . index.php [L]
        RewriteCond %{HTTP_HOST} ^.sampcheck.com
RewriteCond %{HTTP_HOST} www\.([^.]+)\.sampcheck\.com [NC]
RewriteRule ^(.*)$ http://sampcheck.com/www/$1 [L,NC,QSA]

图片转代码服务由CSDN问答提供 功能建议

首先,我想问一下如何使用htaccess进行子域重定向。 www.samcheck.com/www/google.com到google.com.samcheck.com

我已经尝试了stackoverflow上提供的所有解决方案。但是没有一个解决方案适用于 我。

除了URL是 https://sampcheck.com/www/google.com 之外,我希望它是 https: //google.com.sampcheck.com ,以便显示主网址的内容。 提前预订:)

  RewriteCond%{REQUEST_FILENAME}! -  f 
 RewriteCond%{REQUEST_FILENAME}!-d 
 RewriteRule。  index.php [L] 
 RewriteCond%{HTTP_HOST} ^ .sampcheck.com 
RewriteCond%{HTTP_HOST} www \。([^。] +)\。sampcheck \ .com [NC] 
RewriteRule ^(。*)  $ http://sampcheck.com/www/$1 [L,NC,QSA] 
   
 
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongpigui8898 2019-06-23 21:41
    已采纳

    In addition to my comments to the question and my puzzlement what sense such host naming scheme should make (except for cheap phishing attempts), here is something that should point you into the right direction:

    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^www\.samcheck\.com$
    RewriteRule ^/?www/([^/]+)/?$ https://www.$1.sampcheck.com/ [R=301]
    

    It is a good idea to start out with a 302 temporary redirection and only change that to a 301 permanent redirection later, once you are certain everything is correctly set up. That prevents caching issues while trying things out...

    Also note that such redirection can only work if you actually have valid certificates for those dynamic host names...

    This rule will work likewise in the http servers host configuration or inside a dynamic configuration file (".htaccess" file). Obviously the rewriting module needs to be loaded inside the http server and enabled in the http host. In case you use a dynamic configuration file you need to take care that it's interpretation is enabled at all in the host configuration and that it is located in the host's DOCUMENT_ROOT folder.

    And a general remark: you should always prefer to place such rules in the http servers host configuration instead of using dynamic configuration files (".htaccess"). Those dynamic configuration files add complexity, are often a cause of unexpected behavior, hard to debug and they really slow down the http server. They are only provided as a last option for situations where you do not have access to the real http servers host configuration (read: really cheap service providers) or for applications insisting on writing their own rules (which is an obvious security nightmare).

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题