我有两个EC2服务器。 一个运行Windows Server 2012 R2,另一个运行在Amazon的Linux版本上。 Linux盒用作PHP进行脚本编写的Web服务器。 我希望Linux服务器在每次处理PHP文件(充当RESTful端点)时向Windows服务器发送一个字符串。
我从未做过类似的事情,并且想知道从哪里开始。 从到目前为止的研究来看,使用Netcat创建Telnet连接似乎可以完成这项工作。 如果是这样,样板代码将是什么样? Netcat是一个非常古老的平台,在Google搜索的示例中找不到很多东西。
我也欢迎其他可以解决此问题的解决方案。
我正在尝试做的工作流程如下:
A user hits PHP file end-point
-> PHP or the server it runs on sends a string to the Windows Server
> Windows server receives the string and starts a script
您可以考虑使用以下任一方法将此作为Windows服务器上的端点公开:
IIS + PHP
IIS + CGi/Perl
IIS + Asp
或其他任何东西。
在IIS(Windows Web服务器)上公开一个简单页面,并在Linux服务器收到请求时从Web服务登录名(Linux服务器)中单击该页面。 Windows服务器公开的脚本/页面可以执行所需的脚本。 应该保护Windows服务器上公开的页面/端点,以便没有人可以执行它(禁用公共ip。在防火墙规则中仅限制Linux服务器IP等)。
样品
$my_var = file_get_contents('http://WinServerPrivateIp/runScript.pl'); // Make it asynchronous if needed
$my_var = file_get_contents('http://WinServerPrivateIp/runScript.pl'); // Make it asynchronous if needed
runScript.pl
将执行您的实际脚本。