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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cisco交换机基本配置命令_cisco交换机保存命令

    cisco交换机基本配置命令_cisco交换机保存命令前段时间我们发布了关于学校机房项目交换机的配置,理解这篇,交换机配置不再难,这篇是以思科交换机为配置基础,有部分朋友觉得有些难度,希望我们发些基础些的内容,本期我们就一起来看下思科的基础配置。思科交换机的基本配置一、基本配置switch>enable//进入特权模式switch#configterminal…

    2022年4月20日
    437
  • C++和Java中STL库入门[通俗易懂]

    C++和Java中STL库入门[通俗易懂]C++和Java中STL库入门STL简介为什么使用STLSTL基本概念STL使用前的初始化C++里STL基本容器详解STL简介STL简称标准模版库,被容纳在C++标准程序库,包含了许多基本数据结构和基本算法,使程序员写起来得心应手。为什么使用STL在学习数据结构的时候,在程序中会使用到堆、栈、队列、链表等一些基本的算法,而学习数据结构的时候,这些基本算法写起来十分繁琐,如果不想写这些,那么就可以考虑一下STL了。但是不要太过于依赖STL!STL基本概念要使用STL,需要理解以下几个基本概念:

    2022年8月31日
    6
  • WebRTC中Fec实现「建议收藏」

    WebRTC中Fec实现「建议收藏」FEC报文构建、FEC掩码构造和丢失数据包恢复ForwardErrorCorrection::EncodeFec()主要:如2.2.1中所介绍的,随机丢包和突发丢包下fec组包模式不同,所以webrtc准备了两张mask表kFecMaskRandom(随机丢包),kFecMaskBursty(突发丢包)去生成mask,调用internal::GeneratePacketMasks()去生成mask 根据mask和packet,调用GenerateFecPayloads()生成fec包

    2022年8月11日
    13
  • linux(9)find命令详解[通俗易懂]

    linux(9)find命令详解[通俗易懂]find命令格式:findpath-option[-print][-exec-okcommand]{}\;find命令的参数:path:要查找的目录路径。~表示$HO

    2022年7月31日
    8
  • 谷歌清楚缓存快捷键_清除浏览器缓存的快捷键是什么

    谷歌清楚缓存快捷键_清除浏览器缓存的快捷键是什么我们经常会遇到这些情况,浏览器打开网页打不开,打开网页老是在加载。尤其是在我们在做网页设计的时候,经常预览结果往往没有出现我们想要的结果,很大可能性就是浏览器的缓存没有清除引起的。那么清除浏览器缓存的快捷键是什么呢?佰佰安全网就带大家来了解一下这些打开浏览器,按Ctrl+Shift+Delete,就会出现清除浏览器缓存的框,你可以选择你要清理的东西,点击ok,一切搞定。各种浏览器清除缓存数据的方法…

    2022年7月18日
    16
  • 常见集群(Cluster)软件和技术解析

    常见集群(Cluster)软件和技术解析常见集群(Cluster)软件和技术解析

    2022年10月15日
    3

发表回复

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

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