Nginx üzerinde wsgi'de “chdir (): Böyle bir dosya veya dizin [uwsgi.c line 1723]” nasıl düzeltebilirim?


9

Ana dizinimde treeio projesi var, şimdi o treeio'yu nginx sunucusunda çalıştırmak istiyorum. Zaten treeio bağımsız olarak çalışabilir Django kaynağı ile geliyor. Bunu Django sunucusunda çalıştırmak istemiyorum, ancak nginx sunucusunda çalıştırmak istiyorum. Sadece Karthik'in bu cevabında verilen adımları takip ettim .

Ancak, bu yanıttan 4. adımı yürütürken veya takip ederken, aşağıdaki hatayı atar:

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

Benim uwsgi.inidosyamda

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

Lütfen nginx sunucusunda treeio dağıtımı yapmama yardım et.


Lütfen uwsgi.inisorunuzdaki yapılandırmayı ( ve nginx) ekleyin. Ayrıca, atıfta bulunduğunuz yanıtların / adımların listesine de bağlanın (başka bir sorudalar mı?).
gertvdijk

@ADR bu sorunun cevabını hiç buldunuz mu?
Mark Stosberg

Yanıtlar:


2

Chdir hata iletisi, var olmayan bir dizin almaya çalıştığını gösterir.

Görüntülenen çıktınızdan o dir ya /home/rajesh/treeioda olur /home/treeio/.

Dir'in ilgili bir django proje direktörü olarak hareket etmek üzere yapılandırıldığı göz önüne alındığında, daha olasıdır /home/treeio/; ancak bu yapılandırma yalnızca uwsgi.inigörüntülediğinizde belirtilmiş olabilir .

Bu nedenle, var /home/treeio/olması gerekmemesi nedeniyle, varolma olasılığı ve dolayısıyla bir izin problemi vardır .


1

Genel bir ipucu

chdir(): No such file or directory

tür hataları.

Bir hata mesajı "dosya bulunamadı" diyor, ancak hangi dosyayı aradığını söylemiyorsa can sıkıcı. strace yardımcı olabilir, tüm sistem çağrılarını yazdırır.

Deneyin

strace uwsgi --ini uwsgi.ini

çıktı şifreli ama orada bir yere sonuna doğru hangi dizinin eksik olduğunu söylemek gerekir.

Bu durumda muhtemelen / home / treeio /

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.