RSS订阅 | 匿名投稿
您的位置:网站首页 > 网络 > 正文

delphi WebBroker IIS CGI 的配置

作者:admin 来源: 日期:2018/1/5 14:16:05 人气: 标签:

用 WebBroker 写的程序,可以编译为 IIS 底下工作的 ISAPI 或者 CGI。
这里讨论 CGI 模式:

在 IIS 底下,如果访问一个 CGI,假设我们的 CGI 程序是:MyWebBrokerCGI.exe,则 URL 是:http://myserver.com/MyWebBroker.exe
1. 在 StandAlone 模式下,不同页面的链接,直接就是 WebBroker 的 Action 的 PathInfo 属性。
1.1. StandAlone 模式下,URL 可能是:http://localhost:8080/About
1.2. 假设本程序的 CGI 模式的文件名为:MyWebBrokerCGI.exe,则 CGI 模式下,可能是:http://localhost/MyWebBrokerCGI.exe/about
1.3. Action 的 PathInfo 的例子:/About,则访问链接 MyWebBroker.exe/About 就会被 WebBroker 调用 PathInfo 为 About 的 Action 去执行。
1.4. 在 IIS CGI 模式下,为了让访问的链接不要让 MyWebBrokerCGI.exe 这样的内容在 URL 里面给用户看到,设置 IIS 【处理程序映射】-- 【添加脚本映射】,增加一个名为 Dhtml 的映射,映射到 MyWebBrokerCGI.exe,这样,当用户访问 xxx.dhtml 的时候,IIS 就会去调用 MyWebBrokerCGI.exe
1.5. 经过上述对 IIS 的设置,URL 变成:http://localhost/About.dhtml,IIS 就会去调用我们的 MyWebBrokerCGI.exe
1.6. 因为 PathInfo 是 /About,为了让用户访问的 About.dhtml 能够调用到正确的 Action,本程序在 Default Action 里面增加了一段代码,当用户访问的文件名包含 .dhtml 的时候,从 VirtualPages.txt 这个外部文件里面找到对应的数字,根据数字 case 到正确的 Action。
1.7. 现在将 PathInfo 的 /About 改为 /About.dhtml 以后,在 IIS CGI 模式下,用户直接访问 about.dhtml,IIS 将直接调用 MyWebBrokerCGI.exe,然后 MyWebBrokerCGI.exe 的 WebBroker 框架将直接会调用到 PathInfo 为 About.dhtml 的 Action 而不会因为找不到对应的 Action 而去执行 Default 的 Action 然后再通过 VirtualPages.txt 的查表去调用对应的 Action。因此上述 1.6 描述的代码就没有用了。但是代码还是留在程序里面不删除。

-----------------
上面提到的 VirtualPages.txt 的内容大概是这样的:
about.dhtml=2
xxx.dhtml=3

这样,Delphi 的代码里面,用 TStringList 加载这个文本文件,然后使用 TStringList 的 Name=Value 的方式,就能将 about.dhtml 的 value 读到,这是个字符串 2,将它转换为数字,然后 case 数字,去调用对应的方法,就达到根据用户访问的文件名 about.dhtml 来调用对应的 Action 方法的目的。

不过,把 Action 的 PathInfo 直接修改为 about.dhtml 后,WebBroker 直接调用这个 Action 了。这段代码就没有必要了。

http://blog.csdn.net/pcplayer/article/details/78018614

读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址:
下一篇:没有资料