Django代码更改未在生产服务器上生效
我修改了一个 .py 文件,结果在本地开发服务器上能看到这些改动,但我需要先删除 .pyc 文件。生产服务器上这个特定的文件甚至没有 .pyc 文件。我尝试了更新 apache wsgi 并重启生产服务器上的 apache,但还是没用。即使删除这个 .py 文件,应用程序的表现也没什么变化。服务器上安装了 memcached,但我对它是怎么缓存的了解不多。此外,还有 .git 文件,五台服务器在一起工作——一台是主服务器,四台是负载均衡器。
祝好!
3 个回答
1
如果你使用uwsgi作为网关,记得在uwsgi的设置里加上touch-reload这个参数。
$ touch <your-touch-reload-file>
然后在控制台里运行一下,就能看到更改生效了。
如果你是用apache配合mod_python或mod_wsgi,那就需要重启apache才能让更改生效。
2
你需要重启你的服务器(不管是WSGI、UWSGI还是你在生产环境中使用的其他东西)。
9
你确定你在修改的是正确的服务器吗?我知道这个问题听起来有点傻,但你可以试试先停止Apache服务,然后看看页面还能不能打开。如果还能打开,那你肯定是在搞错服务器了。
如果不能打开,接下来可以尝试重新加载Apache(这和重启是不一样的)。
sudo service apache2 reload
如果这样还是不行,那就把你的Apache设置发出来,可能你在查看的文件夹和你实际上传的文件夹不对。