Request.Headers["Referer"]
Объяснение
Request.UrlReferer
выдает System.UriFormatException
, если HTTP-заголовок реферера неверен (что может произойти, поскольку он обычно не находится под вашим контролем).
Что касается использования Request.ServerVariables
, для MSDN:
Request.ServerVariables Collection
Коллекция ServerVariables извлекает значения предопределенных переменных среды и информацию заголовка запроса.
Request.Headers Свойство
Получает коллекцию заголовков HTTP.
Request.Headers
- лучший выбор, чем Request.ServerVariables
, поскольку Request.ServerVariables
содержит все переменные окружения, а также заголовки, где Request.Headers
- гораздо более короткий список, содержащий только заголовки.
Таким образом, лучшее решение - использовать коллекцию Request.Headers
для непосредственного чтения значения. Обратите внимание на предупреждения Microsoft о HTML-кодировке значения, если вы собираетесь отображать его в форме.