FAQ > Web开发 > Apache配置

为什么tsl程序在apache上执行提示堆栈溢出(Stack overflow),而在命令行状态执行正常?    

  • Apache执行tsl默认的线程空间是65536(及65K),如果tsl程序的堆栈大于这个数apache就会崩溃。

    如何扩大?


    进入apache安装目录(64位windows默认为:c$\Program Files (x86)\Apache Software Foundation\Apache2.2)
    首先)修改conf/httpd.conf,
      增加:Include conf/extra/httpd-mpm.conf 
      表示启用conf/extra/httpd-mpm.conf 配置

    其次)修改conf/extra/httpd-mpm.conf
      在 IfModule mpm_winnt_module节中
      增加:ThreadStackSize      2048000
      表示线程空间大小为2M。配置此选项是依据实际情况而定,天软推荐使用1-2M。

      

     配置为:
      <IfModule mpm_winnt_module>
         ThreadStackSize      2048000
         ThreadsPerChild      150
         MaxRequestsPerChild    0
      </IfModule>