OK.那么,让我们以PHP为例。
- 我在浏览器中输入一个 URL,请求一个 php 脚本。(例如
http://www.somedomain.com/index.php
) - 浏览器将该请求发送到相应的服务器。
- 服务器通过其扩展名(
.php
)识别 - 这是一个PHP文件。 - PHP 解释器处理文件并输出结果。
- 服务器发回输出。
现在,假设我们正在处理一个......自制的解释器XYZ(及其二进制文件等),例如处理.xyz
文件。
我应该怎么做,所以上述所有内容对我的 XYZ 解释器都有效?
我应该如何设置整个事情,以便它正常工作?
提示: 我不是在寻求有关如何编写解释器的帮助,而是有关如何使其以上述方式运行......
您的选择是使用现有的标准接口并编写符合它的软件,或者为服务器编写一个新模块。
对于前者,CGI简单但效率低下,而FastCGI更现代但相对复杂。
如果你想编写一个新模块,那么细节将取决于你正在处理的服务器。
这完全取决于您使用的Web服务器。但是,如果那是 Apache,您应该研究构建和安装自己的 apache 模块apxs
。谷歌将帮助您找到有关apxs
的在线教程。
要为特定文件结尾添加处理程序,您应该在 apache 配置中执行以下操作(在构建 iterpreter/apache 模块之后):
AddHandler my_handler .end