[英]uwsgi works from console but not ini
我正在嘗試使用nginx設置石墨。 因此,我需要使用/ etc / uwsgi中的配置或ini文件來運行它,但是我無法使應用程序正確啟動。
使用命令
uwsgi --http :9090 --wsgi-file /opt/graphite/conf/graphite.py
石墨啟動並運行良好,我可以對其進行瀏覽並查看統計信息。
我着手創建一個ini文件,內容如下:
[uwsgi]
processes = 2
socket = localhost:8081
gid = nginx
uid = nginx
chdir = /opt/graphite/conf
uswsgi-file = graphite.py
運行ini文件,我看到:
mapped 145536 bytes (142 KB) for 2 cores
*** Operational MODE: preforking ***
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
我只能猜測它在ini文件中配置錯誤,但是我看不到它是什么。
任何幫助表示贊賞!
您的命令行和ini文件之間有一些區別:
您在ini中使用socket
而不是http
。 這意味着,uWSGI服務器將使用uwsgi協議而不是http進行對話。 如果您在nginx中使用uwsgi_pass
並嘗試通過該nginx從瀏覽器訪問您的網站,那很好。 但是,如果您嘗試繞過nginx直接從瀏覽器直接訪問uwsgi,則不會成功,因為瀏覽器不會講uwsgi。
您已將uswgi-file
而不是wsgi-file
放入配置中。 那根本行不通,uwsgi將無法找到您的wsgi文件。 而且,如果要使用wsgi文件將目錄寫入目錄,最好使用:
module = wsgi
而不是wsgi-file
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.