I think I am getting stack overflows running a cakePHP application on an Apache server under Windows 7.
相关问题
- Stop .htaccess redirect with query string
- .htaccess rule, redirecting old unexistent address
- How to deploy a web application Aurelia in an Apac
- Apache Directory Studio not opening
- PHP Empty $_POST
相关文章
- Apache+Tomcat+JK实现的集群,如果Apache挂了,是不是整个服务就挂了?
- How reliable is HTTP_HOST?
- Making a two way SSL authentication between apache
- UnicodeEncodeError when saving ImageField containi
- mod_rewrite only on GET
- jquery how to get the status message returned by a
- How do I debug errors that have no error message?
- Cloudfront cache-control headers missing
This problem happens more often on Windows platform, because of smaller Apache's default stack size. There is 1 MB default stack size on Windows, unlike 8 MB on Unix/Linux platforms. It could be a reason, why some for example PHP scripts works properly on Linux, but cause crash of Apache on Windows.
Furthermore, the crash is silent (segmentation fault), there is no error message, Apache just stops responding and the child process is restarted. Browser gets no data and renders a blank page, so it's a bit difficult to decide what's wrong.
It's a common problem when working with long regular expressions in PHP.
There is one notice in Apache's error log only, which tells, that child process crashed:
The best way to alter the Apache's stack size is using the ThreadStackSize directive in the Apache's configuration file. There is a description of the ThreadStackSize directive in Apache's documentation: http://httpd.apache.org/docs/2.2/mod/mpm_common.html#ThreadStackSize
So increase of the Apache's stack size on Windows might looks like this:
These lines should be put in the Apache's configuration file. For simplicity, you could put it to httpd.conf. Or better (but not necessary), put it to httpd-mpm.conf file and in httpd.conf uncomment this line:
It sets Apache's stack size to 8 MB, so it's the same as a default value on Linux.
And don't forget to restart Apache! :)