mac:在端口80上安全地为django应用程序提供开发服务的最简单方法
我想在开发过程中将我的django应用程序向办公室中的其他计算机开放。 我理解以root用户身份运行django开发服务器是个坏主意。即使在开发过程中,在端口80上为django应用程序提供服务的推荐方式似乎是django、gunicorn和nginx。这对我来说似乎太复杂了。我已经完成了前两个步骤,但是现在我完全困惑地盯着nginx。网站上没有mac版本。我真的必须从源代码构建它吗 我遇到的另一个选择是。但这对我来说似乎很粗略,涉及到设置公钥等等。有没有更简单的方法在mac上从端口80为django应用程序提供服务而不作为root用户运行mac:在端口80上安全地为django应用程序提供开发服务的最简单方法,django,macos,security,Django,Macos,Security,我想在开发过程中将我的django应用程序向办公室中的其他计算机开放。 我理解以root用户身份运行django开发服务器是个坏主意。即使在开发过程中,在端口80上为django应用程序提供服务的推荐方式似乎是django、gunicorn和nginx。这对我来说似乎太复杂了。我已经完成了前两个步骤,但是现在我完全困惑地盯着nginx。网站上没有mac版本。我真的必须从源代码构建它吗 我遇到的另一个选择是。但这对我来说似乎很粗略,涉及到设置公钥等等。有没有更简单的方法在mac上从端口80为dja
另外,在端口80上以root身份运行django开发服务器与不以root身份运行django开发服务器相比,有什么风险?有人完全访问我的文件系统的可能性有多大?而且,如果mac上有默认的用户设置,那么如果我以root用户身份运行django dev服务器,这是否比以非root用户身份运行django dev服务器更可能呢?既然您提到您不想以root用户身份运行django服务器,并且您在mac上,那么您可以将流量从端口80转发到端口8000:
sudo ipfw add 100 fwd 127.0.0.1,8000 tcp from any to any 80 in
然后以普通用户身份运行Django服务器(默认情况下,它服务于端口8000)
要删除端口转发,请运行:
sudo ipfw flush
你为什么不干脆
/manage.py运行你的.lan.ip.address:80
?除非您的计算机可以从Internet访问,否则您是安全的。或者只需执行./manage.py runserver 0.0.0.0:80 Paulo Scardine和dan klasson所说的以root身份运行所需的操作。。。相反,您可以执行/manage.py runserver
(正常情况下),然后在apache中创建一个反向代理(如果nginx对您来说很复杂),只需在虚拟主机上设置ProxyPass
。。。类似这样的方法可以工作:ProxyPasshttp://localhost:8000/
@PauloScardine“除非您的机器可以通过互联网访问”。我很难为情地说,我不完全理解是什么决定了我的机器是否可以从internet访问。@morgancodes:在公司网络中,您可能位于防火墙/网关后面,并且使用为内部网络保留的IP地址-如果不额外配置防火墙/网关。通常以192.169.0.*
,172.16.*
或10.*.*
开头。请网络管理员确认一下,但是如果你的局域网地址是这样的话,你很可能就不会被某个随机的互联网家伙戳到你的测试服务器了。
sudo ipfw flush