Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 是否可以通过mod_rewrite仅从HTTP_REFERER获取主机名?_Apache_Mod Rewrite - Fatal编程技术网

Apache 是否可以通过mod_rewrite仅从HTTP_REFERER获取主机名?

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_

我试图仅从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_REFERER} ^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))? [NC]
RewriteRule ^traveler.html$ http://something.com/viewer.html?embed_referer=%4 [QSA,L]

通过RewriteCond的反向引用,我可以将查询字符串附加到新路径/URL。

我知道很多,我的问题是整个referer URL对客户端元素造成了严重破坏。因为我不需要整个URL,而且主机名本身是安全的,所以我尝试解析它。