ตอนแรก: เมื่อฉันเริ่ม nginx ฉันเห็นข้อผิดพลาดในบันทึก:

unix:/root/project/flask_paramiko.sock failed (13: Permission denied) while connecting to upstream

uwsgi.ini:

[uwsgi]
#chdir  = /root/project
module = wsgi:app

master = true
processes = 5

socket = flask_paramiko.sock
chmod-socket = 666
vacuum = true

die-on-term = true

wsgi.py

from flask_paramiko import app

if __name__ == "__main__":
    app.run()

uwsgi --socket /root/project/flask_paramiko.sock --wsgi-file wsgi.py:

unable to find "application" callable in file wsgi.py
unable to load app 0 (mountpoint='') (callable not found or import error)

/usr/bin/uwsgi --ini /root/project/uwsgi.ini ทำงานได้ดีโดยไม่มีข้อผิดพลาด

ไม่ผิดตรงไหนครับ

answer

คุณกำลังใช้สองตัวเลือกที่แตกต่างกัน ตัวหนึ่งระบุเฉพาะไฟล์อีกตัวเลือกหนึ่งคือmodule

--module=wsgi:app works fine without any errors

--wsgi-file=wsgi.py unable to find "application" callable

( --option=valueใน cmdline option valueกับ ini ไม่ต่างกันมาก)

ตัวอักษรapplicationเป็นเพียงชื่อ uwsgi ค่าเริ่มต้นเพื่อค้นหาถ้าคุณส่งเฉพาะชื่อไฟล์ หากแอปพลิเคชันของคุณถูกเรียกappแทน ให้พูดในบรรทัดคำสั่งหรือในการกำหนดค่า