wcat следует перенаправлениям на порт 80, даже если значение по умолчанию было установлено на 43xxx - PullRequest
0 голосов
/ 20 октября 2011

Я использую IIS 7 и веб-сайт развернут на порту 43xxx.Я пытаюсь сделать нагрузочный тест с использованием wcat.Я пытаюсь получить доступ к URL-адресу / directaccess /, который, в свою очередь, вернет код состояния 302, перенаправит на другой URL-адрес, который также вернет код состояния 302, а после этого последний URL вернет 200OK.

Я написал сценарий и файлы настроек для wcat.Указано в настройках по умолчанию (а также в каждом запросе), чтобы установить порт в 43xxx, но когда я запускаю wcat, он возвращает одну ошибку 302 ok и еще одну 400 (они возвращаются равными числами, поэтому я предполагаю, что первый запрос в порядкеи последующее (первое перенаправление) плохо).

Я также заглянул в папку HTTPErr, чтобы проверить журналы, и там есть много 400 ошибок, указывающих на запрос GET для того, что должно быть вторымURL, но сделанный на порту 80, а не 43xxx, как указано мной в запросе (или настройках по умолчанию - которые, если я хорошо понимаю из документов, наследуются в перенаправлениях).

Я просто хотел бы узнать, еслиэто нормальное поведение для wcat.Отсутствие перенаправления на тот же порт, что и первоначальный запрос.

Игнорировать тот факт, что я тестирую на локальной машине.Я использовал это только для настройки тестов, прежде чем переносить их на другую машину.

Этот сценарий используется.

scenario
{
warmup   = 2;
duration = 5;
cooldown = 2;

default
{
    setheader
    {
        name    = "Connection";
        value   = "keep-alive";
    }

    version     = HTTP11;
    statuscode  = 200;
    close       = ka;
    port = 43111;
    redirect = true;
}

transaction
{
    id = "root transaction";
    weight = 100;

    request
    {
        url = "/login/DirectAccess.rails?code=xxxxxxxxx";
        statuscode = 302;
        redirect = true;
        port = 43111;
    }

    sleep
    {
        delay = 1000;
    }
}
}

1 Ответ

2 голосов
/ 21 октября 2011

Я думаю, это зависит от того, что сервер отправляет обратно в заголовке Location перенаправления 302. Если оно не содержит доменного имени (например, Location: / redirect / to / page ), то WCAT не должен изменять домен или номер порта и продолжать использовать тот же номер порта. Однако если заголовок Location содержит полное доменное имя (например, Location: http://www.thissite.com/redirect/to/page) без номера порта, то WCAT переключится на использование порта 80.

...