我想编写一个简单的解释语言并在Apache中使用它。我之前已经编写了一个,但它是在我们自己编写的网络服务器中构建的。
我猜apache将需要编译的文件传递给某些可执行文件,这些文件将“执行”代码并返回apache将html发送给用户?如果我错了,请纠正我。
有没有人知道如何完成这项工作?也许样品?这种语言并不重要(尽管C#或Java会很好,因为我可以处理这两种语言),这更符合理解。
答案 0 :(得分:3)
如果您不想使用CGI路由,请考虑编写一个Apache模块,该模块可以托管您的解释器,也可以在另一个进程中调用它。这听起来令人生畏,但实际上并没有那么糟糕。起点:
一旦你感到舒服,你可以看看更强大的实施:
如果选择模块,您将无法避免使用C.
答案 1 :(得分:1)
Common Gateway Interface (CGI)描述了网络服务器应如何与生成动态网页的程序(如解释程序)进行交互。曾几何时,超过90%的非静态网页都是由CGI调用的Perl解释器生成的......
答案 2 :(得分:1)
我建议您使用apache支持的现有语言。
如果您想了解它可能需要多长时间开发一个新的语言/编译器/运行时工具包,您可以使用Java或PHP作为指南。
的OpenJDK
Codebase 4,782,692 lines
Effort (est.) 1451 person-years
Estimated Cost $79,802,051
http://www.ohloh.net/p/openjdk/estimated_cost
PHP
Codebase 2,696,715 lines
Effort (est.) 772 person-years
Estimated cost $42m.
http://www.ohloh.net/p/php/estimated_cost
开发语言后,您必须将其与Apache集成。