我在一个小型的电子商务网站上使用wordpress(不是为了电子商务,而是为了首页和其他一些网站)。 我们希望获得在第二台服务器上设置的站点的完整副本,然后将DNS切换到新服务器的IP地址。
在切换之前,当然我们想要testing一下新的服务器,更新主题等。
我复制了软件和数据库,起初事情似乎没有问题。 新的服务器只能使用IP地址访问,所以它类似于http:// 47.48.147.148/mysite.com/,并且在apache2.conf(这在Ubuntu上)使用Alias,它会将其redirect到/ home / mysite.com/wordpress/。
然而,许多链接去www.mysite.com [无论链接是什么]。 我试图login到后端来解决这个问题,并发现即使是pipe理员login被redirect到真实的网站。 所以去http://47.48.147.148/wordpress/wp-login.php发送我到login页面,当我login它使我在www.mysite.com/wp-admin,login。
所以我觉得我在这里犯了一些基本的战略错误。 我们有一个小的网站,只有一个服务器是很多(数据库和代码)。 我只是想要build立新的操作系统,数据库软件,博客和电子商务软件等,然后切换它的能力。 我想在第二台服务器上设置一切,然后将DNS注册切换到新的IP地址,这样做(不同的客户可能不会立即得到新的IP地址,但在一天左右,他们都会,而且无论如何,没有人会看到一个没有准备好的网站)。
那么,做这个更好的策略是什么呢? 我不想在生产服务器上快速升级操作系统等操作系统,我希望能够使用浏览器testing新的设置,并将真实的数据join其中,这就是为什么我将代码和数据库从当前产品服务器。 在小型商店环境中,处理这些问题的最佳总体策略是什么? 是否有一个Apache的设置,可以让这个工作,或者有没有一个不同的方式去testing新的设置尽可能真实,而不需要dynamic更改prod服务器?
无论什么时候我都会把要生产的机器作为一个与现在分开的名字分开,我会自由地使用通过主机的文件操作。
唯一的问题是,如果您开始使用证书,则证书中的IP /名称组合可能不匹配。 我也看到了一些没有被这种方式愚弄的许可软件。
在机器上,确保/ etc / hosts中的条目在切换时准确反映现实。 然后,当事情发生变化时,确保取出主机文件条目,因为事情将来会改变,并且你不想让主机文件搞砸你,同时给你一个错误的否定错误指示。
你不能只修改你的工作站的/ etc / hosts文件,并指定域到testing服务器? 根本不需要触摸开发服务器的configuration。 缺点是修改主机文件是非常烦人的,可能会导致严重的错误(在错误的服务器上做一些事情)。