首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免在替换文件时导致web应用程序崩溃?

问如何避免在替换文件时导致web应用程序崩溃?
EN

Stack Overflow用户
提问于 2010-05-04 09:18:02
回答 3查看 59关注 0票数 3

假设你有一个访问量很大的大型web应用,但你不想让你的应用崩溃&你不想让人们看到使用FTP替换文件时发生的php或mysql错误,如何避免这种情况?如何在替换完成之前只执行旧版本的文件?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-05-04 09:23:39

您至少可以遵循以下两条规则中的一条:

  1. 使用加速器(如APC)并关闭mtime检查。因此,在您手动清除缓存之前,旧版本将从内存项目项目中使用,以将虚拟主机符号链接到您的项目所在的目录:让我们检查一下您将项目存储在/

/

  1. /www中。而/home/project/public_html是您真正的webroot并符号链接到www。所以-创建/home/project/www2,在那里签出文件,设置并做任何你想做的事情。在此之后-只需更改符号链接。
票数 2
EN

Stack Overflow用户

发布于 2010-05-04 09:24:00

我使用git将我的更改上传到同一台服务器上的临时网站,在测试之后,我将其推送到生产网站。在接收到所有文件之前,不会更改任何文件。从好的方面来说,它只发送压缩的更改,所以我甚至不需要发送整个文件。

中转区不是必需的。我在很多服务器上工作,有时在服务器上使用一些特定的配置(大多数情况下只是发现没有安装扩展)/

我相信你可以用另一个版本控制系统做同样的事情。不过,您需要小心。我链接的教程专门将git信息存储在文档根目录之外。否则,有人可能会克隆你网站的所有源代码。

如果你喜欢SVN,那么.svn放在每个目录下可能有点烦人。确保人们不能下载他们不能下载的东西。

票数 1
EN

Stack Overflow用户

发布于 2010-05-04 09:23:49

将你的应用部署到临时目录中。完成后,只需将原始应用程序目录重命名为app.old以及将文件部署到应用程序的目录

注意:这在Unix环境中应该可以正常工作。此外,只有当上面的所有目录都在相同的文件系统上时,这才能起作用。在极少数情况下,如果用户碰巧在将原始应用程序重命名为.old之后访问该应用程序,并且在将临时目录重命名为原始应用程序目录之前访问该应用程序,则可能会看到404错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2762220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档