用pyweb离线(内网)部署时会出现白屏,翻看手册,有离线部署,但是说的比较隐晦,需要改两个函数。其实在start_server中加一个cdn=False就好了,不用修改包里的函数,也不用把包里的html粘出来。
####### if __name__=='__main__': pywebio.start_server(appname,port=7777,cdn=False) # 其中appname是主函数名,port=7777表示用7777端口,cdn=False就是指用本地环境了.
# 记得用高点版本的谷歌内核浏览器测试,亲测85版本好用,56 版本不好用。
附:PyWebIO手册原文:
'''
PyWebIO静态资源的托管
PyWebIO默认使用CDN来获取前端的静态资源,如果要将PyWebIO应用部署到离线环境中,需要自行托管静态文件, 并将 webio_view()
或 webio_handler()
的 cdn
参数设置为 False
。
cdn=False
时需要将静态资源托管在和PyWebIO应用同级的目录下。 同时,也可以通过 cdn
参数直接设置PyWebIO静态资源的URL目录。
PyWebIO的静态文件的路径保存在 pywebio.STATIC_PATH
中,可使用命令 python3 -c "import pywebio; print(pywebio.STATIC_PATH)"
将其打印出来。
注解
使用 start_server()
启动的应用,如果将 cdn
参数设置为 False
,会自动启动一个本地的静态资源托管服务,无需手动托管
''''
本文来自博客园,作者:o0o0o9,转载请注明原文链接:https://www.cnblogs.com/o0o0o9/p/15753262.html