У меня есть страница, я не использую перенаправления, просто перехожу прямо на /invite/index.php?code=f13dc6c9be в браузере и обслуживает около 50% времени.
В остальное время в браузере отображается сообщение «Входной файл не указан», а в журналах отображается:
2014/02/25 11:21:24 [error] 5231#0: *1 FastCGI sent in stderr:
"Unable to open primary script:
/var/www/vhosts/app.web/public_html/invite/index.php (No such file or directory)"
while reading response header from upstream, client: 192.168.0.2,
server: app.web, request: "GET /invite/index.php?code=f13dc6c9be HTTP/1.1",
upstream: "fastcgi://127.0.0.1:9000", host: "app.web"
Я знаю, что подобные вопросы задавались и раньше, и о переполнении стека тоже, но в основном все они последовательно решают эту проблему.
Единственное, что подходит близко: https://stackoverflow.com/questions/7004161/random-no-input-files-specified-in-nginx-and-php-fpm
Но это rlimit_files
решение не помогает, и оно находится на моем локальном сервере разработки, и я единственный, кто попадает на страницу.
Я использую Ubuntu 12.04 и nginx 1.4.5, а страницы обслуживаются через php-fpm
Есть идеи, почему он будет работать только с каждым другим запросом? Я просто нажимаю CTRL + R, без POST или GET, без изменения URL. Просто обновляю, и ошибка приходит и уходит.
На самом деле я не настраивал другой файл конфигурации php-fpm для этого сайта, поэтому по умолчанию использовался порт 9000 и конфликт с другим сайтом на том же хосте.
Создание нового файла php-fpm для хоста устранило проблему, гарантируя, что порт, указанный в конфигурации php-fpm, соответствует порту в конфигурации nginx.