Я только что переключился с apache на nginx, просто для тестирования, и у меня возникла следующая проблема. Я использую этот конфиг для nginx
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
Теперь у меня есть скрипт php makethumbs.php, который автоматически изменяет размеры изображений, отображаемых на моем сайте. С apache работает просто отлично. С nginx я получаю эту ошибку:
2011/12/29 15:13:17 [error] 15548#0: *9 open() "/usr/share/nginx/html/makethumbs.php/0737438664-22.jpg" failed (20: Not a directory), client: 193.138.192.81, server: www.escortele.eu, request: "GET /makethumbs.php/0737438664-22.jpg?width=48&height=64&image=/members/escorte/0737438664-22.jpg HTTP/1.1", host: "escortele.eu:88", referrer: "http://escortele.eu:88/"
Проблема в том, что он видит makethumbs.php в качестве каталога, и это должен быть скрипт, а не каталог.
Я не могу понять, какое правило перезаписи использовать, только для makethumbs.php, поэтому оно действует как скрипт, а не как каталог.