windows fastcgi「建议收藏」

windows fastcgi「建议收藏」一.编译apachefastcgi模块  1.编译mod_fastcgi.so  方式一: mod_fastcgi/Win32目录下有mod_fastcgi.dsp和mod_fastcgi_AP2.dsp两个工程文件,但是无法用vc6打开,只能手动编译,文章参见: http://blog.csdn.net/feisan/article/details/1813482…

大家好,又见面了,我是你们的朋友全栈君。

一. 编译apache fastcgi模块

    1. 编译mod_fastcgi.so

    方式一: mod_fastcgi/Win32 目录下有mod_fastcgi.dsp和mod_fastcgi_AP2.dsp两个工程文件,但是无法用vc6打开,只能手动编译, 文章参见: http://blog.csdn.net/feisan/article/details/1813482

cl /ID:\Apache2.2\include /nologo /MD /W3 /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "SHARED_MODULE" /FD /c *.c
link /LIBPATH:D:\Apache2.2\lib /DLL /nologo /subsystem:console /incremental:no mod_fastcgi.obj fcgi_util.obj fcgi_protocol.obj fcgi_pm.obj fcgi_config.obj fcgi_buf.obj libhttpd.lib libapr-1.lib libaprutil-1.lib ws2_32.lib

    cmd运行上述代码,会在当前目录生成 mod_fastcgi.dll,重命名至 mod_fastcgi.so

 

     方式二:直接编辑 Makefile.nt 

     APACHE_SRC_DIR=D:\Apache2.2

     LINK32_FLATGS = “$(APACHE_SRC_DIR)\lib\libhttpd.lib” “$(APACHE_SRC_DIR)\lib\libapr-1.lib” “$(APACHE_SRC_DIR)\lib\libaprutil-1.lib” , 将 “$(APACHE_SRC_DIR)\Release\ApacheCore.lib” 修改成前面内容即可, 因为apache2.2下没有 apachecore.lib

      nmake -f Makefile.nt CFG=release, 则会在 Release 目录下生成 mod_fastcgi.dll

   

     2. 编译 mod_fcgid.so, apache 官方推荐的 fastcgi 模块,目前最新版2.3.9

     下载: mod_fcgid , windows上运行: nmake -f Makefile-fcgid.win INSTDIR=”D:/apache2.2″ 

     

二. 编译fastcgi开发库

    windows上编译比较简单,见README,运行 nmake -f Makefile.nt 

 

三. 错误列表

     1. Premature end of script headers: cgi_test.fcgi

      配置 httpd.conf, 加载mod_fastcgi.so, 运行cgi程序,报错: (OS 109)管道已结束。: FastCGI: comm with server xxx aborted: GetOverlappedResult() failed   

      替换成 mod_fcgid.so ,再运行cgi程序,同样报错: (OS 109)管道已结束。: mod_fcgid: get overlap result error 

      原因:  libfcg.dll 与 cgi_test.fcgi 程序版本不一致, libfcg.dll 是vs2010 release版, cgi_test.fcgi 是 vs2010 debug 版本,则会出现一些莫名其妙的错误, 必须保持版本一致性

      当cgi_test.fcgi 为debug版本时,会出现下面错误:

      * 调用 getenv(“QUERY_STRING”) 获取 apache 系统环境变量值为空

      * 当依赖*.dll 与 cgi_test.fcgi 不在同一目录 /cgi-bin 时,无法正常启动 cgi 程序

 

     2. windows上运行hello_fcgi.py 脚本,也报错: ‘module’ object has no attribute ‘fromfd’ 

     原因: 查找 soket.fromfd(),发现此函数只能用于unix, 难道这 mod_fastcgi 不能用于windows,上文测试用的版本分别为 mod_fastcgi-2.4.6,mod_fcgid-2.3.9 

 

     3. [error] (OS 2)系统找不到指定的文件。 : mod_fcgid: can’t run D:/Program

     [warn] (OS 2)系统找不到指定的文件。  : mod_fcgid: spawn process D:/Program Files/Apache2.2/cgi-bin/echo.fcgi error

     原因: 系统找不到echo.fcgi,是因为apache安装在program files目录下,目录含空格而被截断了.将apache 安装在根目录即可 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159889.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux idea 激活码【2022.01最新】

    (linux idea 激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~0HKL…

    2022年3月31日
    393
  • plupload+struts2实现文件上传下载「建议收藏」

    plupload+struts2实现文件上传下载

    2022年1月23日
    41
  • pycharm自动退出_pycharm怎么debug

    pycharm自动退出_pycharm怎么debug起因:今天在学习py的时候,学到了numpy以及pandas,然后我的pycharm莫名其妙就进入了一个啥啥科学模式,就是执行代码都在pythonConsole里面去了,原谅小白不懂这玩意。。。然后怎么也回不到过去了!!!小白都惊呆了,这可咋整。。于是去求助开发大佬~得到解决方法如下:Settings–>Tools–>PythonScientific>Showplotsintoolwindow取消勾选View取消勾选ScientificMode

    2022年8月25日
    4
  • Java实现约瑟夫环问题「建议收藏」

    Java实现约瑟夫环问题「建议收藏」约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3…n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。/***@author16026**/importjava.util.ArrayList;importjava.util.List;

    2022年6月3日
    36
  • fork join框架原理_jalor6框架教程

    fork join框架原理_jalor6框架教程声明:本篇博客是在阅读了引用博客的两篇文章后做了简短的概括与归纳,只作为自己笔记文章目录一、思想二、工作窃取算法三、demo用例四、关键组件ForkJoinPoolForkJoinTaskForkJoinWorkerThreadWorkQueue五、Fork/Join运行流程图任务提交创建线程signalWork方法任务执行六、引用博客一、思想Fork/Join是Java7提供的并行执行…

    2022年9月20日
    2
  • 0x7ffffffff什么意思(y9000x)

    运行之后发现:0x7FFFFFFF对应int.MaxValue即21474836470xFFFFFFFF对应uint.MaxValue即42949672950x7FFF对应short.MaxValue即327670xFFFF对应ushort.MaxValue即655350x7F对应sbyte.MaxValue即1270xFF对应byt…

    2022年4月12日
    76

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号