python - 是否可以在 python 中将动态(带有静态文件)Web 应用程序作为没有其他依赖项的单个包提供服务?

标签 python packaging cherrypy flask

假设您有一个 friend 知道如何根据您的说明输入 python run.py(或双击它)。就是这样。这位 friend 不知道什么是 apache 或 nginx,但需要为我和其他 friend 共享电影/音乐的 Web 应用程序提供服务器。

现在你想制作一个包含你的脚本的包,它将在 :8080 上监听并提供漂亮的 Web 应用程序,使用 cherrypy 进行线程处理,以防 10 个或更多 friend 同时访问音乐/博客/其他内容。而且该应用程序非常简单,可以在 flask 中制作。数据库是一个简单的 sqlite3 文件,没什么特别的。

这可以在 python 中完成吗?无需调用 apache/nginx 或配置文件或要求 Web 应用程序的用户(Web 应用程序的所有者及其用户,而不仅仅是哦将其放在某处的 Web 主机上以供“生产”使用,这不是用于“生产”,供许多人在自己的计算机上使用)成为程序员或部署人员。

谢谢。 '

编辑

我选择了 cherrypy,只有一个 runit.py 启动了 cherrypy 的多线程服务器,提供静态文件服务。但是后来我在日志记录方面遇到了问题,来自它上面的几个应用程序和 cherrypys 自己的日志记录机制,主要是文档很糟糕。

所以现在,我用 gunicorn 来做。一个网络应用程序和一个与 gunicorn 和 gevent 一起服务的 runit.py。很好...

最佳答案

只要您的用户知道如何从网上下载东西,并且还可以键入“python setup.py install”,我不确定您预见到的其他障碍是什么。在 Windows 上,如果您使用 python setup.py bdist_wininst 打包您的代码,它会更简单。参见 http://docs.python.org/distutils/builtdist.html#creating-windows-installers

关于python - 是否可以在 python 中将动态(带有静态文件)Web 应用程序作为没有其他依赖项的单个包提供服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8209748/

相关文章:

python - Odoo 11 : get cron id or name inside the called method for ir. 手动创建的 cron 不仅仅是从 XML 创建的

android - Visual Studio 中的 Xamarin 打包失败 |单符号错误 -1073740791

mysql - AngularJS:使用 mySQL 数据库的双向数据绑定(bind)

haskell - 管理相关 Cabal 包的最佳实践是什么?

python - Python 3.3 新封装后,Distribute 会过时吗?

python - 从 CherryPy 提供 css 文件

python - 从cherrypy返回xml文档

python - 确定软件包是否使用 Yum Python API 安装?

python - 使用python bokeh获取窗口宽度

Python:每次我重新启动解释器时,删除 sys.path 中的项目都会被撤消