2012-02-16 75 views
0

我的一位朋友用网站建设者建立了一个网站。我提供帮助,最终重新设计了网站。我写的显然与他使用的网站建设者的模板不兼容,但他宁愿坚持使用网站建设者,这使得他可以做出他需要做出的改变。PHP - 在网站之间切换?

我目前的想法是让两个网站同时建立并让他选择用户访问哪个网站。这样我们就可以使用新网站,然后当他进行更改时,切换回旧网站,直到我有机会更改新版本。这会让那些在旧网站发生变化时碰巧访问该网站的普通用户感到困惑,但该网站非常小,访问者很少,并且所做的任何更改都很容易重复。

但是,我不知道如何做到这一点。我的第一个想法是有两个public_html目录和一个脚本,根据需要重命名它们,但我不知道如何去改变脚本运行的文件夹的名称。我也不认为我能够将旧网站移到我控制的主机上;站点构建器不提供ftp详细信息,并且它为用户处理所有肮脏的工作。我认为我最多可以将域名转移到不同的注册商,与新网站的主机一起设置域名服务器,然后从那里开始,但是旧网站将无法从网站构建商编辑。

我的第二个想法是做这样的事情在PHP中:如果任何人使它

if(...){ 
    echo file_get_contents(oldsite . $_SERVER['REQUEST_URI']); 
} 
else{ 
    ... 
} 

这么远,这里是什么,我想实现的关键点:

  • 老站点可以通过站点构建器(vistaprint)进行更改
  • 脚本选择哪个网站的用户访问
  • 的url不会改变
  • 假设我们有在旧网站的唯一控制是从网站建设者和更改域的能力,一个简单的所见即所得的编辑器,以及释放域名(20美元,骗子)。与名称服务器,FTP,文件管理器等无关。

当前行动计划:将域名(让我们假设它是http://example.com)转移到我控制的寄存器和虚拟主机。设置一个附加域(http://old.example.com)并注册带有addon域的web构建器。我会接着让每个页面设置方式我的第二个计划表明:

if(...){ 
    echo file_get_contents('http://old.example.com' . $_SERVER['REQUEST_URI']); 
} 
else{ 
    ... 
} 

我有点不愿意了许多的原因做到这一点,所以我希望有人能赐教上更好的方法。

回答

0

你正在推翻这一点。只需在必要时重定向(HTTP状态3xx)到您的旧站点。

+0

把这个留给了答案,因为它实际上不是答案,但我必须说出来......不要这么做!仔细想一想,如果你在任何网页上看到这种行为,你会不会成为访问者? – kaoD 2012-02-16 03:18:37

+0

我不想让网址改变。 – mowwwalker 2012-02-16 03:19:02

+0

你为什么不呢?它们可能不可互换,因此当试图从不活动的网站获取直接URL时,它会让用户更加痛苦(因此通常是404)。 – kaoD 2012-02-16 03:22:20