Django和live server在重写时仍然使用旧的源文件

Django和live server在重写时仍然使用旧的源文件,django,caching,wsgi,Django,Caching,Wsgi,我在Apache服务器上使用Django 1.3和mod_wsgi(守护进程模式),Nginx用于提供静态文件。数据库位于单独的服务器上。wsgi守护进程在2个线程上运行,最大请求数为100 当我重写旧的.py文件时会遇到麻烦。。。不是,pyc。。。我还重写了.wsgi配置文件()。有时,一些服务器请求使用旧代码,因此会生成错误(HTTP错误500)。是否有需要清空的服务器端缓存 这可以由.pyc文件生成吗?我需要重新启动Apache服务器或wsgi守护程序吗?如果删除.pyc文件并触摸wsgi

我在Apache服务器上使用Django 1.3和mod_wsgi(守护进程模式),Nginx用于提供静态文件。数据库位于单独的服务器上。wsgi守护进程在2个线程上运行,最大请求数为100

当我重写旧的.py文件时会遇到麻烦。。。不是,pyc。。。我还重写了.wsgi配置文件()。有时,一些服务器请求使用旧代码,因此会生成错误(HTTP错误500)。是否有需要清空的服务器端缓存


这可以由.pyc文件生成吗?我需要重新启动Apache服务器或wsgi守护程序吗?

如果删除.pyc文件并触摸wsgi文件,它应该在有机会的时候重新加载wsgi守护程序,您应该很好


有时我不得不重新启动apache以使我的更改生效。

如果您删除.pyc文件并触摸wsgi文件,它应该在有机会时重新加载wsgi守护程序,而且您应该很好


有时我不得不重新启动apache以使更改生效。

设置所有权/权限,以便在apache下运行代码的用户无法更改代码文件或创建.pyc文件。用户应用程序运行时应该只能够写入它真正需要的数据或上载目录,因为这样更安全


最可靠的部署方法是将新版本安装到一个全新的目录层次结构中,WSGI脚本文件位于该树之外。然后用引用新目录的新脚本文件替换WSGI脚本文件。但是,执行此操作时,不应就地编辑WSGI脚本文件,而是应将新文件移到适当的位置,这样文件系统就可以对整个文件进行原子替换,并且不会出现动态编辑的风险。

设置所有权/权限,以便在Apache下运行代码的用户无法更改代码文件或创建.pyc文件。用户应用程序运行时应该只能够写入它真正需要的数据或上载目录,因为这样更安全


最可靠的部署方法是将新版本安装到一个全新的目录层次结构中,WSGI脚本文件位于该树之外。然后用引用新目录的新脚本文件替换WSGI脚本文件。但是,执行此操作时,不应就地编辑WSGI脚本文件,而是应将新文件移到适当的位置,以便文件系统对整个文件进行原子替换,并且不会出现即时编辑的风险。

我没有使用“touch file.WSGI”方法。相反,我使用的是不会导致停机的apache重新加载。Touch file.wsgi不会导致停机,您尝试过了吗?哦,呃,对不起,我指的是重新启动apache导致的停机:)哦,是的,这是有道理的。好主意,只要能减少停机时间就行。触摸WSGI脚本文件以重新启动WSGI应用程序进程仅在使用守护程序模式时有效。您确定不在不知情的情况下使用嵌入式模式吗?关于源代码重新加载的文档解释了如何检查。我没有使用“touch file.wsgi”方法。相反,我使用的是不会导致停机的apache重新加载。Touch file.wsgi不会导致停机,您尝试过了吗?哦,呃,对不起,我指的是重新启动apache导致的停机:)哦,是的,这是有道理的。好主意,只要能减少停机时间就行。触摸WSGI脚本文件以重新启动WSGI应用程序进程仅在使用守护程序模式时有效。您确定不在不知情的情况下使用嵌入式模式吗?关于源代码重新加载的文档解释了如何检查。