Я использую fedora 17, и когда я устанавливаю nginx с помощью uwsgi, используя сокет домена unix, когда я помещаю сокет в каталог с соответствующим разрешением, это нормально, но когда я помещаю сокет в /tmp
него, это вызовет ошибку nginx:
connect() to unix:/tmp/MySite.sock failed (2: No such file or directory) while connecting to upstream
Файл существует и имеет права на чтение / запись для пользователя nginx. Но какова причина этой ошибки, она действительно сводит меня с ума, может кто-нибудь понять это.
/run
Непосредственно недоступно для записи, но вы можете указать systemd создать в нем каталог, доступный для записи обоим процессам.ДА! ЭТО ПОМОГЛО!
Просматривал сообщения проверки-запуска-журналов от uwsgi, но не имел данных в журналах запуска, не смог выяснить, что происходит. Оказалось, мне нужно было изменить файл sock в папку, отличную от / tmp, и добавить:
catch-exception = true
в INI-файл WSGI. Оказалось, что я указал местоположение обработчика файлов в несуществующем каталоге, поэтому он не мог сначала регистрировать ошибки.
источник