Home >Backend Development >PHP Tutorial >PHP has encountered a Stack overflow问题解决方法_php技巧

PHP has encountered a Stack overflow问题解决方法_php技巧

WBOY
WBOYOriginal
2016-05-16 20:33:09976browse

昨晚将一个disucz论坛进行转移后,发现打开的页面上回多一个PHP has encountered a Stack overflow 这个提示错误,进过翻译为“PHP遇到堆栈溢出”。我就感觉奇怪了,新站没人访问的,怎么可能会溢出。 好吧去discuz官方论坛找找解决方法。

找到的第一解决方法,更新后台缓存,结果不行。接下来检查数据库配置文件,也没有错误。检查php权限也没有错误。

discuz官网有人说是php版本太低了,个人对于这种人是比较反感的,这种说法比较扯淡。不用去验证了。


把新旧的服务器对比较,发现了一个问题,两个的路径都不同,马上去查看上级目录文件夹权限,果然是权限出现了问题。文件路径是D:/www/discuz. 查看到旧的服务器上面www和discuz文件夹权限有“匿名来宾权限”。 在去新服务器上面看到www文件夹没有“匿名来宾权限” 而discuz文件夹权限则是有的。 说明上一级目录权限不足导致的。 重新给一下权限。 ok完美解决PHP has encountered a Stack overflow的问题。

上面说了这么多,其实就是一句话:

在windows服务器下面都是因为权限问题,具体来说是上一级目录权限问题。

例如:

原来的网站目录是 d:\www\jb51

快速安全的解决方法就是在jb51目录下,新建一个目录 webroot,而且这个目录的权限跟jb51权限是一样的。

现在的网站目录就是:d:\www\jb51\webroot即可。

现在很多php系统都是因为这个问题导致出错例如 discuz、phpmyadmin等。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn