php+iis6.0+mysql+windows server 2003 总是导致应用地址池停止运行,什么原因?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

php+iis6.0+mysql+windows server 2003 总是导致应用地址池停止运行,什么原因?

2016-06-14 15:30:15 2592 1

先描述一下大前提:
服务器使用的是 windows server 2003 + iis6 + mysql + php[isapi模式] 进行配置的,并且站点上有13个虚拟站点,其中 4个站点为纯PHP脚本站点,其他是asp或者 asp.net 站点,所以服务器并不是那么纯净。
现在问题是,
在这4个PHP站点中,一个是dzx!2.5搭建的社区系统(A),一个是使用jishigou搭建的微博平台(B),一个是使用ucenter搭建的用户中心(C),最后一个位自己写的程序(D)。
以上A、B、C、D创建站点时,均自有程序应用地址池分别对应为:A1,B1,C1,D1;
在流量和IP均为发生大变动的情况下,站点A的A1应用地址池总是无故假死,但其他站点B、C、D都可正常访问,需要手动回收和释放当前A1,甚至都无法正常启动World Wide Web Publishing Service服务。登录服务器上看,总会弹出这个提示(如下图):
screenshot
screenshot
screenshot

以上错误信息均在php + iis + isapi模式下运行;

倘若,更换php的运行模式为fastcgi,则不会出现以上情况,但是fastcgi的线程数总会提示满,于是需要开启更大的线程以此解决。
最后,站点A使用的dzx!2.5为原生系统,前端并未修改,修改的为后台。

取消 提交回答
全部回答(1)
  • 落地花开啦
    2019-07-17 19:37:52

    不建议用isapi方式

    C:WINDOWSsystem32inetsrvfcgiext.ini内容仅供参考

    [Types]
    php=PHP
    
    [PHP]
    ExePath=D:\php\php-cgi.exe
    InstanceMaxRequests=10000
    EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000

    php.ini中几个关键点仅供参考

    output_buffering = On
    cgi.force_redirect = 0
    cgi.fix_pathinfo = 1
    fastcgi.impersonate = 1

    php.ini中的安全考虑

    disable_functions = system,passthru,shell_exec,exec,popen,proc_open
    enable_dl = Off

    php.ini中尽量设置独立的临时目录等

    upload_tmp_dir = "d:/tmp/uploadtemp/"
    session.save_path = "d:/tmp/sessiondata/"
    date.timezone = "Etc/GMT-8" ; GMT+8
    mbstring.language = Neutral ; Set default language to Neutral(UTF-8) (default)
    mbstring.internal_encoding = UTF-8 ; Set internal encoding to UTF-8

    建议在windows平台使用线程安全的php,建议所有php站点使用同一个程序应用池。

    如果有可能,别在windows平台跑php。

    0 0
相关问答

1

回答

如何卸载普通 PHP 应用的探针?

2020-03-28 20:18:50 405浏览量 回答数 1

1

回答

对PHP多进程与MySQL的高并发瓶颈是怎么处理

2016-02-08 15:32:56 6028浏览量 回答数 1

1

回答

PHP+Mysql一个字段,多个关键字匹配的问题

2016-02-08 16:31:32 2707浏览量 回答数 1

1

回答

mysql内存表保存php session会话的问题

2016-02-08 10:42:19 1896浏览量 回答数 1

1

回答

php查询mysql返回结果的问题

2016-02-08 10:51:20 1925浏览量 回答数 1

1

回答

php连接Mysql 用stmt防注入如何进行模糊查询

2016-02-08 13:07:04 2342浏览量 回答数 1

1

回答

为什么PHP中使用PDO::prepare,MySQL表名不能使用占位符?

2016-02-08 13:39:34 2642浏览量 回答数 1

1

回答

php连接mysql识别不到端口号

2016-02-08 13:53:19 2611浏览量 回答数 1

1

回答

php 连接mysql问题

2016-02-08 14:13:14 2036浏览量 回答数 1

1

回答

PHP怎么直接处理MySQL中的大量数据

2016-02-08 14:46:34 2292浏览量 回答数 1
+关注
落地花开啦
喜欢技术,喜欢努力的人
0
文章
7824
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载