2011-03-19 117 views
4

http://code.google.com/p/modwsgi/一个能阅读本声明的mod_wsgi的为什么mod_wsgi在Windows上不支持守护进程模式?

守护模式将然而 只可在Apache 2.0或2.2 在UNIX上运行,只有当潜在 阿帕奇的 Apache的运行时库已编译支持 进行线程化。

在Windows下不支持守护进程模式的原因是什么?

我发现上面的Apache的越来越

Invalid command 'WSGIDaemonProcess', perhaps misspelled or defined by a module not included in the server configuration 

错误之后。这不是模块的问题,因为WSGIScriptAlias指令工作正常。我想我得到的错误是由于mod_wsgi wiki上描述的限制。

回答

6

Windows不提供UNIX风格的fork()系统调用,因此子进程继承父进程内存映像的进程产卵不可能。 Apache/mod_wsgi需要fork()。

+0

我猜Apache使用Apache的便携式运行库,它看起来像理想的地方来处理缺乏某些操作系统叉()的。 APR被建议作为解决方案缺乏fork()在Windows [这里](http://stackoverflow.com/questions/1686578/fork-chroot-equivalent-for-windows-server-application/1709145#1709145)。但是我看了一下APR的文档,它看起来像[不](http://apr.apache.org/docs/apr/0.9/group__apr__thread__proc.html#g3d0415bf69b0a629a929833e82758b85)在Windows上实现fork()。 – 2011-03-20 19:44:52

1

对于所有谁,阅读格雷厄姆的回答后,想知道更多叉()在Windows下面是有关这个主题的问题:

What is the closest thing windows has to fork()?
substitute for fork()ing? in windows.
CreateThread vs fork()
fork/chroot equivalent for Windows server application
Where does Microsoft Windows 7 POSIX implementation currently stands?

上面提到的两个有趣的事情是:

另外我问Does Interix implement fork()?

相关问题