Переадресация robots.txt на php в nginx

Есть сервер CentOS с nginx. Нужно сделать динамический robots.txt. Для этого сделал robots.php и переадресацию на него для robots.txt, но если вызывать site.ru/robots.txt то этот robots.php не выполняется а выдается как текст. Если вызвать site.ru/robots.php то все работает. Переадресация в nginx такая:

location /robots.txt { alias /home/xxx/web/site.ru/public_html/robots.php; }

как заставить этот код выполняться?


Ответы (1 шт):

Автор решения: Alexey Ten

Либо так:

location = /robots.txt {
    rewrite ^ /robots.php;
}

либо добавить в ваш location все директивы по обработке php-файлов (начиная с fastcgi_pass).

Мне кажется, что rewrite проще.

→ Ссылка