我用燒瓶建立了一個API。我的應用程序沒有任何靜態資產,因此我沒有理由使用nginx。讓Gunicorn運行在80端口上
我希望在端口80
運行gunicorn我有一個 「部署腳本」:
mkdir .log 2> /dev/null
DEBUG=0 gunicorn -b 0.0.0.0:80 backend:app --access-logfile .log/access.log --error-logfile .log/general.log
我希望與authbind
在端口80上運行gunicorn。我在這裏跟着這個guide。
請注意,我能夠運行authbind python -m SimpleHTTPServer 80
當我嘗試運行authbind ./deployment.run 80
,
我看到下面的錯誤:
2013-04-25 15:32:55 [24006] [ERROR] Can't connect to ('0.0.0.0', 80)
2013-04-25 15:33:08 [24018] [INFO] Starting gunicorn 0.17.4
2013-04-25 15:33:08 [24018] [ERROR] Retrying in 1 second.
2013-04-25 15:33:09 [24018] [ERROR] Retrying in 1 second.
2013-04-25 15:33:10 [24018] [ERROR] Retrying in 1 second.
2013-04-25 15:33:11 [24018] [ERROR] Retrying in 1 second.
2013-04-25 15:33:12 [24018] [ERROR] Retrying in 1 second.
任何想法,爲什麼我不能將gunicorn綁定到端口80?
有什麼建議嗎?
正如Uku所提到的,Unix保護1024以下的端口,而authbind不會讓普通用戶神奇地繞過該端口。必須將其配置爲允許某些類型的綁定 - 請參閱http://manpages.ubuntu.com/manpages/hardy/man1/authbind.1.html和http://mutelight.org/authbind。 – mahemoff 2014-02-27 23:56:48