Wie behebe ich "chdir (): Keine solche Datei oder kein solches Verzeichnis [uwsgi.c Zeile 1723]" in wsgi auf nginx?

9

Ich habe ein Treeio-Projekt in meinem Home-Verzeichnis. Jetzt möchte ich dieses Treeio auf einem Nginx-Server ausführen. Bereits Treeio kann unabhängig auf Django laufen, kommt mit der Quelle. Ich möchte das nicht auf dem Django-Server ausführen, aber ich möchte es auf dem Nginx-Server ausführen. Ich habe gerade die Schritte in dieser Antwort von Karthik befolgt .

Beim Ausführen oder Befolgen von Schritt 4 aus dieser Antwort wird jedoch der folgende Fehler ausgegeben:

[uWSGI] getting INI configuration from uwsgi.ini
* Starting uWSGI 1.0.3-debian (32bit) on [Thu Jun 27 17:22:01 2013] *
compiled with version: 4.6.3 on 17 July 2012 02:24:04
current working directory: /home/rajesh/treeio
detected binary path: /usr/bin/uwsgi-core
chdir(): No such file or directory [uwsgi.c line 1723]

Meine uwsgi.iniDatei enthält

[uwsgi] 
# set the http port
http = :8080

# change to django project directory
chdir = /home/treeio/

# add /var/www to the pythonpath, in this way we can use the project.app format
pythonpath = /var/www

# set the project settings name
env = DJANGO_SETTINGS_MODULE=treeio.settings

# load django
module = django.core.handlers.wsgi:WSGIHandler()

Bitte helfen Sie mir bei der Bereitstellung von Treeio auf dem Nginx-Server.

ADR
quelle
Bitte geben Sie die Konfiguration ( uwsgi.iniund Nginx) in Ihrer Frage an. Und verlinken Sie auch auf die Antworten / Liste der Schritte, auf die Sie sich beziehen (sie sind in einer anderen Frage?).
Gertvdijk
@ADR hast du jemals die Antwort auf dieses Problem gefunden?
Mark Stosberg

Antworten:

2

Die chdir-Fehlermeldung zeigt an, dass versucht wird, ein nicht vorhandenes Verzeichnis abzurufen.

Aus Ihrer angezeigten Ausgabe geht hervor, dass dieses Verzeichnis entweder /home/rajesh/treeiooder ist /home/treeio/.

Angesichts der Tatsache, dass das Verzeichnis so konfiguriert wurde, dass es als relevantes Django-Projektverzeichnis fungiert, ist dies wahrscheinlicher /home/treeio/. Diese Konfiguration wurde jedoch möglicherweise nur in der von uwsgi.iniIhnen angezeigten Konfiguration angegeben .

Daher ist es sehr wahrscheinlich, dass es existiert, und somit ein Berechtigungsproblem, da /home/treeio/es nicht existieren muss.

Odoncaoa
quelle
1

Ein allgemeiner Tipp zu

chdir(): No such file or directory

Tippfehler.

Es ist ärgerlich, wenn in einer Fehlermeldung "Datei nicht gefunden" angezeigt wird, aber nicht angegeben wird, nach welcher Datei gesucht wird. strace kann helfen, es druckt alle Systemaufrufe.

Versuchen

strace uwsgi --ini uwsgi.ini

Die Ausgabe ist kryptisch, aber irgendwo gegen Ende sollte angegeben werden, welches Verzeichnis fehlt.

In diesem Fall wahrscheinlich / home / treeio /

Teknopaul
quelle