在宝塔部署flask的步骤我已经写了一篇博客:宝塔部署flask项目-CSDN博客
之前说如果出现找不到application错误:
spawned uWSGI http 1 (pid: 3116)
--- no python application found, check your startup logs for errors ---
[pid: 3114|app: -1|req: -1/1] 127.0.0.1 () {62 vars in 1090 bytes} [Sat Dec 30 22:03:36 2023] GET / => generated 21 bytes in 0 msecs (HTTP/1.1 500) 2 headers in 83 bytes (0 switches on core 0)
可以修改运行代码:
if __name__ == '__main__':app.run()
else:application = app
这样就有uwsgi.ini文件需要的application名字了.
还有一种方法,就是在uwsgi.ini里面设置访问的程序名不是默认的application,而是app:
修改uwsgi.ini文件添加:
#python 程序内用以启动的application 变量名
callable = app
这样也是可以的.
怎么在宝塔里部署ssl呢?现在都需要付费了,还好宝塔里还有一年免费的:
测试证书仍然可以申请一年的.那就申请这个.在部署flask的时候,不要使用80端口!!使用默认的5000端口或者其他的8000端口都可以.
然后开启外网映射,申请ssl,部署,记得修改配置文件里面的端口,就一个地方:
只要修改这一个地方的端口就可以了.然后重启Nginx.
这个时候就可以使用https来访问flask项目了.
如果开启强制https,那么访问http的时候,自动跳转到https了.宝塔自动在配置文件里添加这个代码:
if ($server_port !~ 443){rewrite ^(/.*)$ https://$host$1 permanent;}