Я надеюсь получать имя хоста от URL, поскольку оно проникает через Zeus, и я просмотрел документацию относительно Trafficscript, и кажется, что единственная опция является regex. У Doe Trafficscript есть метод для возврата частей URL?
Я ищу что-то отчасти как parse_url
Причина, которую я спрашиваю, у меня есть следующее правило
$url = string.lowercase(http.getPath());
if(string.contains($url, "/simple_protected_url"))
{
http.redirect("http://mywebsite.com/");
}
Проблема, у нас есть наша подготовка, и участки разработки не находятся на том же доменном имени (http://mywebsite.com/
) таким образом, правило не работает приятно. Я хочу сделать правило более универсальным, таким образом, оно просто перенаправляет к корню любого веб-сайта, оно работает, и нуждаются в способе выяснить хост для перенаправления к.
Спасибо
Да, это довольно просто, например, в TrafficScript:
$headerHost = http.getHostHeader();
if( $headerHost == "notwhatiexpected.com") {
# do something
}
http.getHostHeader();
извлекает из текущего запроса заголовок Host
.
.
И вообще есть http.getHeader()
для извлечения любого заголовка из запроса.
Проверьте через Stingray Trafficscript Guide.
Я думаю, что вы, возможно, ищете http.getRawURL()
или просто http.getHeader("Хост")
или http.getHostHeader()
Возвращает заголовок HTTP-хоста. Это значение в нижнем регистре и имеет значение порт удален. Удаляется также любая остановка трейлинга. Например, если заголовок хоста - 'www.Riverbed.com:80', затем http.getHostHeader(). возвращает 'www.riverbed.com'.
# Get the unambiguous Host header
$hostheader = http.getHostHeader();