Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过php文件自动加载站点?_Php_Redirect - Fatal编程技术网

如何通过php文件自动加载站点?

如何通过php文件自动加载站点?,php,redirect,Php,Redirect,有没有一种方法可以使用php文件自动加载网站 我有一个新版本的网站,但我想保持当前版本的生活(与它的当前域)。我只想指导客户/客户预览新版本,但仍然能够访问当前网站 例如:他们可以访问www.currentsite.com访问当前站点。要访问新版本,他们可以访问www.currentsite.com/newversion 这两个站点都是我的托管帐户根目录中的子文件夹。我如何做到这一点 感谢您在这个问题上提供的帮助。您可能需要查看以下文件: 假设您当前的网站位于/home/user/public\

有没有一种方法可以使用php文件自动加载网站

我有一个新版本的网站,但我想保持当前版本的生活(与它的当前域)。我只想指导客户/客户预览新版本,但仍然能够访问当前网站

例如:他们可以访问www.currentsite.com访问当前站点。要访问新版本,他们可以访问www.currentsite.com/newversion

这两个站点都是我的托管帐户根目录中的子文件夹。我如何做到这一点


感谢您在这个问题上提供的帮助。

您可能需要查看以下文件:

假设您当前的网站位于
/home/user/public\u html/current
,而您的新网站位于
/home/user/public\u html/new
,您可以设置如下内容:

RewriteEngine On
# Rewrite every uri that does not start with /newversion/ to the current website
RewriteCond %{REQUEST_URI} !^/newversion/?(.*)$
RewriteRule (.+) /current/$1 [NC,L]

# Rewrite everything else to /new
RewriteRule (.+) /new/$1 [NC,L]
从您的帖子和您提到的托管帐户中有多个文件夹的事实来看,您很有可能已经为当前网站设置了类似的设置。


查看您的根文件夹,看看是否有
.htaccess
文件,然后开始编辑。

您可能想查看文件:

假设您当前的网站位于
/home/user/public\u html/current
,而您的新网站位于
/home/user/public\u html/new
,您可以设置如下内容:

RewriteEngine On
# Rewrite every uri that does not start with /newversion/ to the current website
RewriteCond %{REQUEST_URI} !^/newversion/?(.*)$
RewriteRule (.+) /current/$1 [NC,L]

# Rewrite everything else to /new
RewriteRule (.+) /new/$1 [NC,L]
从您的帖子和您提到的托管帐户中有多个文件夹的事实来看,您很有可能已经为当前网站设置了类似的设置。


查看您的根文件夹,看看是否有
.htaccess
文件,然后开始编辑。

或者在“/newversion”目录中创建一个简单的index.html文件,并使用iframe

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<body>
<iframe src="/" width="100%" height="100%"></iframe>
</body>
</html>

或使用iframe在“/newversion”目录中创建一个简单的index.html文件

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<body>
<iframe src="/" width="100%" height="100%"></iframe>
</body>
</html>

如果您正在寻找纯PHP解决方案,可以在域的根文件夹中放置一个
index.PHP
或similar文件,其中包含:

<?php

header("Location: http://www.currentsite.com/current");

?>

这将启用从到的重定向。缺点是您必须在路径中坚持使用“current”,因此我会选择更优雅的.htaccess解决方案

编辑


哦,如果根文件夹中已经有一个.htaccess文件在执行类似的重写任务,那么这种方法很可能无法工作,因为无法访问
index.php
。您最好先检查它。

如果您正在寻找仅使用PHP的解决方案,您可以在域的根文件夹中放置一个
index.PHP
或similar文件,其中包含:

<?php

header("Location: http://www.currentsite.com/current");

?>

这将启用从到的重定向。缺点是您必须在路径中坚持使用“current”,因此我会选择更优雅的.htaccess解决方案

编辑



哦,如果根文件夹中已经有一个.htaccess文件在执行类似的重写任务,那么这种方法很可能无法工作,因为无法访问
index.php
。你最好先检查一下。

我不明白是什么问题。只需将一个站点放在一个文件夹中,另一个放在另一个文件夹中?我不明白这和自动加载有什么关系?看来你只需要把新网站复制到那个目录中就可以了。有什么问题吗?我不明白你要什么。他们可以访问任意一个URL,可能是通过从一个URL到另一个URL的链接。这里少了什么?你需要什么是自动化的?@Pekka,@Tim:没问题,只是一个偏好。我可以直接链接到新版本,但这是关于演示文稿的。@madmik3:我必须更改对新文件夹的文件引用。我不想将新站点复制到当前文件夹。我不明白问题出在哪里。只需将一个站点放在一个文件夹中,另一个放在另一个文件夹中?我不明白这和自动加载有什么关系?看来你只需要把新网站复制到那个目录中就可以了。有什么问题吗?我不明白你要什么。他们可以访问任意一个URL,可能是通过从一个URL到另一个URL的链接。这里少了什么?你需要什么是自动化的?@Pekka,@Tim:没问题,只是一个偏好。我可以直接链接到新版本,但这是关于演示文稿的。@madmik3:我必须更改对新文件夹的文件引用。我不想将新网站复制到当前文件夹中。永远不要建议使用框架。@皮特:据我所知,向客户显示网站的新版本是暂时的。这样做完全可以。永远不要建议使用框架。@Peeter:据我所知,向客户显示网站的新版本是暂时的。这样做完全可以。非常感谢阿伦,我一定会调查此事的!Aron,我试图实现这一点,但不确定我是否做得对(我猜不对,因为我得到了一个错误)。当前站点有自己的域,新版本有一个指向其文件夹的直接url。使用您的示例,我将“newversion”保持不变(我希望此名称链接到新版本)。在上面写着“current”的地方,我在根目录中给了它当前站点文件夹的名称。在上面写着“new”的地方,我给了它根目录中新版本站点的实际文件夹的名称……请提供一些帮助。您需要发布更多关于这个的详细信息:确切的文件夹结构(最好是在树状结构中显示的OP中)、您的.htaccess文件的确切内容以及它的位置,并可能从apache错误日志中输出。请记住,以上只是一个简单的例子,可能需要一些修改才能工作。非常感谢Aron,我一定会研究这个!Aron,我试图实现这一点,但不确定我是否做得对(我猜不对,因为我得到了一个错误)