PHP / ASP应用程序的最佳设计,可以调用远程服务器

时间:2011-01-19 17:06:13

标签: php ajax web-scraping

我们运行多个Windows / IIS / .Net站点(每台服务器最多30个站点)。每个站点都是通过包含设置的配置文件为单个客户定制的。

我的任务是编写一个小工具,它将'grep'某个服务器上的所有配置文件用于特定的配置设置(或设置),并返回一个漂亮的表格网页显示的值。这将为许多组节省大量时间,特别是因为大多数组无法访问生产服务器,但他们需要知道客户当前的配置方式。

我有一个工作代码,可以从起始路径找到所有.config文件,我可以轻松地扩展它以进行我的grep'ing。以下是挑战:

  1. 我想从MULTIPLE服务器聚合这些数据。这意味着,该工具将托管在自己的服务器上 - 并将调用服务器列表。
  2. 我只限于在实际服务器上使用.NET / ASP(他们不会在IIS上安装PHP),但我正在用PHP编写工具。
  3. 提议设计:从我的观点来看,我认为实现这一目标的最佳方法是编写我的PHP工具并让它对每个服务器上的ASP脚本发出AJAX或CURL请求在列表中。每个ASP脚本都可以进行递归目录解析以查找配置文件,并单独grep文件中的数据,并在RESPONSE中返回。

    这是实现这一目标的最佳方法吗? ASP或PHP方面是否应该“重举”?是我应该使用的推荐数据格式来传递数据。

    任何想法或样本都会很棒。如果您需要更多信息,我可以提供!

    谢谢!

    更新:这是一个配置示例。它是一个基本的ASP文件,包含在其他脚本中。

    custConfig1         = " 8,9,6:5:5 "
    custConfig2         = " On "
    

2 个答案:

答案 0 :(得分:1)

我认为你很高兴使用PHP作为“接收”脚本,而且很确定你手头有这个。

根据示例配置文件的格式,您可以在经典ASP中使用ExecuteGlobal在递归目录查找中循环访问每个文件。然后你可以使用custConfig1等。脚本中的名称。例如(伪)

for each file
    output("custConfig1") = custConfig1
next

使用handy library以JSON的形式返回您需要的内容然后执行所有“硬”工作,将其整理并以PHP格式输出。

答案 1 :(得分:0)

是的,“grep”(如果你的意思是导入文本文件并使用reg表达式来导航它)不是最好的解决方案,在我看来,使用JSON或XML作为格式,并使用PHP的内置XML或JSON工具。

JSON:http://php.net/manual/en/book.json.php

XML:http://php.net/manual/en/book.simplexml.php

您可以使用DOM将XML导航到SimpleXML,但SimpleXML更容易学习(在我看来也是如此),并且可以满足您的需求。