【发布时间】:2010-09-25 23:16:11
【问题描述】:
我写了一个网站,让我困惑的是当我运行网站时,首先我需要启动应用程序, 所以有3种方法:
- sudo python xxx.py
- python xxx.py
- xxx.py
我没有弄清楚如何使用它们,我的电脑中目前的NO.3方法不起作用
【问题讨论】:
我写了一个网站,让我困惑的是当我运行网站时,首先我需要启动应用程序, 所以有3种方法:
我没有弄清楚如何使用它们,我的电脑中目前的NO.3方法不起作用
【问题讨论】:
sudo 将以超级用户权限运行应用程序。考虑到您指的是网站,这肯定不是您想要做的。 (对于 web 应用程序,如果它需要超级用户权限,它就会被破坏。考虑到实际使用的安全风险太大了。)
在其他情况下,您可能有一个执行某种系统维护并需要以 root 身份运行的 python 程序。在这种情况下,您将使用sudo,但您永远不会希望为可公开访问且可能被利用的东西执行此操作。事实上,对于测试以外的任何事情,您可能应该以单独的用户身份运行 webapp,并且访问权限非常有限(例如,将他们的 shell 设置为/dev/null,对他们不需要的任何内容没有读取或写入权限等。 ..)。
另外两个实际上是相同的(就他们所做的而言),但最后一个选项(直接执行脚本)将需要:
chmod +x whatever.py)#!
/usr/bin/python)指向
你想要的python可执行文件
运行东西(同样,这只适用于 unix-y 系统)调用python来运行代码(python whatever.py)并按照上面的步骤(产生一个可以直接用whatever.py调用的脚本)
做完全相同的事情(假设 python 文件中的 shebang 指向与“python”相同的 python 可执行文件,无论如何......)
【讨论】: