Comment puis-je corriger «chdir (): Aucun fichier ou répertoire [ligne uwsgi.c 1723]» dans wsgi sur nginx?

9

J'ai un projet treeio dans mon répertoire personnel, maintenant je veux exécuter cet arbreio sur le serveur nginx. Treeio peut déjà fonctionner indépendamment sur Django fourni avec la source. Je ne veux pas l'exécuter sur le serveur Django, mais je veux l'exécuter sur le serveur nginx. Je viens de suivre les étapes données dans cette réponse de Karthik .

Cependant, lors de l'exécution ou de l'étape 4 de cette réponse, il renvoie l'erreur suivante:

[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]

Mon uwsgi.inidossier contient

[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()

Aidez-moi à déployer treeio sur le serveur nginx.

ADR
la source
Veuillez inclure la configuration ( uwsgi.iniet nginx) dans votre question. Et aussi un lien vers les réponses / liste des étapes dont vous parlez (elles sont dans une autre question?).
gertvdijk
@ADR avez-vous déjà trouvé la réponse à ce problème?
Mark Stosberg

Réponses:

2

Le message d'erreur chdir indique qu'il essaie d'obtenir un répertoire qui n'existe pas.

Il semblerait, d'après votre sortie affichée, que ce répertoire soit soit /home/rajesh/treeioou /home/treeio/.

Étant donné que le répertoire a été configuré pour agir en tant que répertoire de projet django pertinent, il serait plus probable /home/treeio/; mais cette configuration n'a peut-être été spécifiée que dans celle uwsgi.inique vous avez affichée.

Par conséquent, il est très probable qu'il existe, et donc un problème d'autorisation, du fait qu'il /home/treeio/ne doit pas nécessairement exister.

odoncaoa
la source
1

Un conseil général sur

chdir(): No such file or directory

taper des erreurs.

Son ennuyeux quand un message d'erreur dit "fichier non trouvé" mais ne vous dit pas quel fichier il recherche. strace peut vous aider, il imprime tous les appels système.

essayer

strace uwsgi --ini uwsgi.ini

la sortie est cryptique, mais quelque part vers la fin de celle-ci, elle devrait indiquer le répertoire manquant.

Dans ce cas, probablement / home / treeio /

teknopaul
la source