如何迁移单个 (php||JavaScript||..)文件在生产中没有时间限制
How to migrate a single (php||javascript||...) file in production without time constraints
我有简单的文件(php||javascript||...)
在生产中运行 (apache+(php||javascript||...))
.
我正在尝试考虑迁移简单文件的正确方法同时不停止为 Web 客户端提供服务。
可能的影响是:
- Apache缓存文件:我不知道apache如何处理文件(php,img,...(。 它是缓存它们,并检查要重新加载的更新时间戳,还是在每个 http 请求上重新加载?
- Linux 文件以原子方式更改:如果我
cp
包含新内容的文件,apache 只能看到我命令的完整内容最终保存结果? - Apache 执行过程:我可以暂停 Apache 吗,保留当前请求,同时复制新的文件版本。
我想象如下:
- 拥有文件,如 php
require_once
文件,以版本命名(例如:ABusinessClassD-v1.0.php
(,支持向后兼容性,只需自下而上逐个cp
新文件(数据库、静态文件(img、...(、php 文件、javascript 文件...... - 按需强制刷新浏览器代码。
就这么简单!=现实。
拜托,有人可以总结全球简单的手动步骤来更新吗 Apache 生产中的简单文件,无需停止为 Web 提供服务 客户端,在手动故意减慢过程中?
在移动
PHP 代码库时,保证没有问题的唯一可靠方法是在同一台服务器上拥有两台服务器或两个部署。
您有包含旧代码的服务器 1。服务器 2 使用新代码进行设置。然后,更改您的 DNS 记录或负载均衡器/代理设置,以便改为从服务器 2 提供站点。
或者使用一台服务器,您将 Apache 配置为从 /path/to/old
为您的应用程序提供服务,然后在 /path/to/new
中设置新版本。然后,将 Apache 配置更改为对应用程序使用 /path/to/new
并重新启动服务器。
如果您需要在文件名中使用版本号(ABusinessClassD-v1.0.php
(,那么您需要了解版本控制软件,如Git或Mercurial。
相关文章:
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 如何在窗体打开时从javascript倒计时计时器值中节省时间
- AngularJS:获取链接中没有哈希的查询字符串值
- IE/Chrome中未定义的函数,但Firefox中没有
- 使用时刻.js从日期时间中提取时间
- 在Widget代码中没有jQuery的情况下,用光标图像从左滑动到右
- 获取本地时间的JS日期,日期对象中没有时区详细信息
- 为什么我的rails应用程序在生产环境中没有正确响应.js格式
- 应用在生产中加载时间过长
- 在没有 Traceur 的生产中使用 SystemJS
- 如何迁移单个 (php||JavaScript||..)文件在生产中没有时间限制
- 在 JavaScript 中保存“没有”时间的日期
- Socket.io没有't在生产中工作
- 有没有一种方法可以直接在Javascript中格式化时间
- 将YouTube API持续时间(ISO 8601格式的持续时间)转换为h:m:s,当格式中没有"T"
- 在javascript中比较没有时间戳的ISO日期
- 如何在现有的时刻对象中获得没有时间的日期
- Galleria JS没有在生产中使用Rails管道
- 在没有插件的情况下,以特定格式在jquery中获取时间戳
- Javascript中没有时间戳的日期和时间