我面临的问题是每当我对我的Python代码进行更改时,例如在__init__.py
或views.py
文件中,它们都不会立即反映在服务器上。我使用Apache + mod_wsgi运行服务器,因此所有守护进程和虚拟主机都配置正确。
我发现每次都必须运行setup.py
才能进行新的更改。这是金字塔的工作原理还是我错过了什么。不应该提供更新的文件而不是旧文件。
答案 0 :(得分:4)
使用mod_wsgi以外的东西开发Python WSGI应用程序通常要容易得多(mod_wsgi捕获stdout和stderr,这使得使用像pdb这样的东西变得棘手)。
Pyramid脚手架生成的代码允许您执行类似“pserve development.ini”的操作来启动服务器。如果你使用它而不是mod_wsgi进行开发,你可以“pserve development.ini --reload”,你的Python源代码的更改将立即反映出来。
这并不意味着您无法使用mod_wsgi在生产中为您的应用程序提供服务。完成开发后,您可以将应用程序放入mod_wsgi中,以实现其良好的生产效果。
答案 1 :(得分:2)
关于mod_wsgi中代码重新加载的工作方式: