Назад | Перейти на главную страницу

Ошибка перезаписи nginx, недопустимое количество аргументов

Я использую nginx 1.13.6. В конфигурации есть эта директива для обслуживания виртуального хоста service.company.com/ с помощью service.company.com/svc/:

if ($server_name = service.company.com) {
   rewrite ^(.*)$ /svc/$1 last;
}

Сервер запускается успешно, хотя и с записью в error.log:

[Emerg] 60841 # 0: недопустимое количество аргументов в директиве rewrite в…

Как ни странно, номер строки в ошибке - это последняя строка файла конфигурации. Ошибка согласуется с отсутствием точки с запятой. Но там есть точка с запятой. И все работает нормально, только игнорируется правило перезаписи.

Есть ли синтаксическая ошибка в этой, казалось бы, тривиальной команде?

Есть ли лучший подход к исходной проблеме?