Apache 是否可以通过mod_rewrite仅从HTTP_REFERER获取主机名?
我试图仅从Apache服务器变量HTTP_REFERER解析主机名,我想知道mod_rewrite是否可行,因为我的目标是获取主机名,然后重写请求。您的HTTP_REFERER将返回链接到页面的确切URL,无论是否使用mode_rewrite,它都将返回文本URL。因此,如果它是something.com/foo/index.php或somthing.com/foo/action,http\u referer会像显示的那样对这些URL进行分类。我找到了答案Apache 是否可以通过mod_rewrite仅从HTTP_REFERER获取主机名?,apache,mod-rewrite,Apache,Mod Rewrite,我试图仅从Apache服务器变量HTTP_REFERER解析主机名,我想知道mod_rewrite是否可行,因为我的目标是获取主机名,然后重写请求。您的HTTP_REFERER将返回链接到页面的确切URL,无论是否使用mode_rewrite,它都将返回文本URL。因此,如果它是something.com/foo/index.php或somthing.com/foo/action,http\u referer会像显示的那样对这些URL进行分类。我找到了答案 RewriteCond %{HTTP_
RewriteCond %{HTTP_REFERER} ^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))? [NC]
RewriteRule ^traveler.html$ http://something.com/viewer.html?embed_referer=%4 [QSA,L]
通过RewriteCond的反向引用,我可以将查询字符串附加到新路径/URL。我知道很多,我的问题是整个referer URL对客户端元素造成了严重破坏。因为我不需要整个URL,而且主机名本身是安全的,所以我尝试解析它。