我写了一个Flask应用程序,还让它与通常用来启动它的命令一起工作。
这意味着:
cd /var/www/BWSWebApp
export FLASK_APP=main.py
flask run --host=0.0.0.0
说明(逐行(:
cd到主.py文件所在的目录中。
导出main.py文件。
用一个可以在整个网络中看到的IP地址运行flask服务器。
现在,我不想每次启动Flask应用程序时都在控制台中手动键入它。所以我认为我可以简单地用下面的编写另一个Python文件
import os
os.system('cd /var/www/BWSWebApp')
os.system('export FLASK_APP=main.py')
os.system('flask run --host=0.0.0.0')
但当我运行该文件时,它不会启动服务器,而且在Python控制台中,我也看不到任何输出。
有人能帮我吗?
您需要在主文件中使用app.run((命令,如下所示。
if __name__ == '__main__':
app.run(host="0.0.0.0")
这样,当您导入文件时,服务器就不会启动。您可以使用其他参数,如运行中函数。像
app.run(debug=True,port=5000)
只需在代码末尾添加以下内容:
if __name__ == '__main__':
app.secret_key = 'super_secret_key' # your app key
app.debug = True # set to true if you want to enable debug
app.run(host='0.0.0.0', port=8000) # change port according to your needs
并通过cli仅运行脚本:
python your_script_name.py