IIS PHP环境Temp文件夹的权限问题引起的网站故障
前几天不知为何,服务器抽风严重…
服务器非常慢,把WINDOWS2003重启了,结果连不上服务器。结果悲剧的去了机房。
查找不出什么问题,GHOST恢复系统。
几天后回去又装了个新站上去。再过两天后,问题又出现了。
排查过程 检查网页服务器,病毒,木马?是否被入侵? 检查数据库服务器,CPU,内存,网络一切正常,相应的端口也做了 IP 限制,只允许网页服务器访问,查看日志文件也没有异常情况 检查其余的 .Net 网站,速度正常,没有任何问题 检查其余的 Php 网站,架构方法一样,也没有任何问题(其余的 php 网站访问量相对于论坛来说小很多) 新建一个应用程序池和网站应用程序,单人访问速度没有问题,说明 php程序没有问题 检查 Php 设置,发现没有异常
综合以上因素,所以基本可以确定问题主要来源于某个小问题,然后当访问人数过多的时候就会体现出来。
那这个问题是什么呢?
这时候想到去看一下 Php 日志文件,打开 c:\windows\temp 下的 Php 日志文件,突然… 卡死了!
原来这个文件已经达到了 800多 MB,难道是这个问题?
记得以前 IIS 下所有网站都出现了访问缓慢的问题,然后发现 IIS 日志文件达到了几个 G,禁用 IIS 日志后恢复正常。
难道也是这个问题?果断禁用了 Php error log,并删除了这个文件后,略有改善,但是感觉还是没解决…
正在彷徨时,忽然发现 Temp 文件夹下有大量 sess_ 开头的文件!(之前打开 Temp 文件夹的时候就特别慢)数量竟然达到了 10W 个!总容量虽然只有 300MB ,但是占用空间却达到了 3G
看上去问题就出在这里了!
关于 NTFS 下的文件数量
NTFS 的优越性就不用说了,也早就是主流了…
NTFS 下的最大文件数是 4,294,967,295个 (2^32 ?C 1)
但是为什么仅仅 10W 个文件就让系统慢成这样了呢?好吧,都说是理论值了… 不知道有没有人测试过,但 10W 个的确非常多了…
删除这些文件是必需的,这个过程很痛苦… 因为系统卡死了…
后借助 del *.* /q /s 后才成功将其删光
可是光删也不是办法,总有一天它还是会满的…
这些文件其实是 Php 保存 Session 的文件,一个 Session 对应了一个文件,但是 Session 结束的时候不应该删除吗?
其实 Php 是会删除的,但是由于权限的问题,而导致它不能及时的删除了,以上就是 IIS_USERS 组的默认权限。
它并没有删除的权限 !难怪没办法删除!
知道这个后就简单了,给 IIS_USERS 加上删除的权限就 OK 了!
修改好后,Temp 文件夹下的文件数一直维持在一个数量级,而没有明显的变化~
栏 目:Windows
下一篇:本地 二级域名配置方法
本文标题:IIS PHP环境Temp文件夹的权限问题引起的网站故障
本文地址:http://www.codeinn.net/misctech/9719.html
阅读排行
- 1win2003 service pack2 IIS 无法复制CONVLOG.EXE CONVLOG.EX_问题处理
- 2Windows Server 2008 R2 DNS 服务器迁移方法
- 3win2008 IP安全策略关闭端口、禁止ping、修改远程连接3389端口、开放指定端口
- 4man -f/-k [keyword]在fedora 29 中报错nothing appropriate
- 5IP策略实现服务器禁止Ping
- 6win2003开机自动登录后锁定
- 7本地策略提示不能确定应用到此机器的组策略安全性设置的解决方法
- 8限制Win9X/NT系统功能二十六招
- 9windows10彻底关闭自动更新【绝对可行】
- 10win2003 3389手工修改方法