LINUX.ORG.RU
решено ФорумAdmin

nginx и if по uastring - не работает

 


0

2

НЕРАБОТАЕТД. А почему - понять не могу, епрст. Тупо возвращает ответ такой, как если бы if не сработал.

nginx.conf

        location / {
                passenger_enabled on;
                root /home/deploy/current/public;
                include prerender.conf;
        }

prerender.conf

set $needPrerender "";

if ($request_uri ~ '_escaped_fragment_') {
  set $needPrerender "Y";
}

if ($http_user_agent ~* (googlebot|google.com|bingbot|bing.com|yandexbot|yandex.com|yahooseeker|yahoo.com|slurp|feedfetcher|blekkobot|crawler) ) {
  set $needPrerender "Y";
}

if ($http_accept ~* 'html') {
  set $needPrerender "${needPrerender}ES";
}

if ($needPrerender = "YES") {
  rewrite ^ /?url=$scheme://$http_host$request_uri break;
  proxy_pass http://localhost:3000;
}



Тестирую через
curl -A "Googlebot/2.1 (+http://www.google.com/bot.html)" http://мояссылко

★★★★★

Последнее исправление: tazhate (всего исправлений: 1)

Проблема была в:

set $needPrerender "Y";


В то время, как:
if ($needPrerender = "YES")

tazhate ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.