在php中显示基于远程URL的内容?

时间:2011-01-06 02:49:21

标签: php coldfusion

我目前在我的服务器上有两个php文件(页眉和页脚)用作模板,并在另一台服务器上检索,该服务器将模板文件包装在他们的软件周围。

是否可以根据我在php中的模板文件中的url显示不同的内容?如果是这样,怎么样?

我不知道这是否重要,但是其他服务器使用的是coldfusion而不是php。

4 个答案:

答案 0 :(得分:1)

php文件可以检查url中的参数,比如template.php?url = stackoverflow,所以在php文件中你可以查看

if ($_GET['url']=='stackoverflow'){
    echo "Stack Overflow template";
}else if ($_GET['url']=='lol'){
    echo "Another template";
}else{
    echo "error";
}

修改 现在服务器获取内容,只需要将该参数添加到url并获取它想要的模板。如果没有指定参数,您可以设置默认模板。

答案 1 :(得分:0)

他们的网址是否可以包含像www.theirwebsite.com/?chrome=red这样的get变量?然后你的文件可以读取它并根据变量的值解析出不同的主题。

答案 2 :(得分:0)

我不确定我是否了解你,但你当然可以根据网址显示不同的内容。

$remote_content = file_get_contents($someurl);
switch $someurl
    case 'www.google.com':
           display_google_content();
           break;
    case 'www.microsoft.com':
           throw(BSOD);
           break;
    default:
           display_standard_content();
}

答案 3 :(得分:0)

远程服务器如何附加代码时,有两种显而易见的可能性。第一种是使用JavaScript指示客户端外出并获取您的内容,然后将其写入适当的位置。在查看由其应用程序生成的HTML源代码时,这应该是相当明显的。

在我看来,更可能的情况是,他们使用CFHTTP检索内容并直接注入。 CFHTTP模仿更明智的呼叫 - 它是标准的HTTP 1.1请求。它不会包含对其服务器上请求的url的引用。除非你能说服他们在请求中添加识别信息,否则你在服务器上能够告诉你的是请求来自CF(通过检查远程代理)。