ID: 36853 Comment by: sdavey at datalink dot com dot au Reported By: kleef84 at hotmail dot com Status: No Feedback Bug Type: IIS related Operating System: Windows Server 2003 SP1 PHP Version: 5CVS-2006-03-24 (CVS) New Comment:
There have been a few bugs reported for this issue over a few years, and the most current and active one seems to be Bug #38111. I suggest everyone head over there and votes for it. It is also open and awaiting a backtrace. The problem appears that the crash is not directly the result of PHP code being executed, but rather the result of IIS cleaning up worker proccesses with PHP ISAPI running in them and DEP preventing some code execution at that time. This makes generating a backtrace difficult, and thus the bug has been around for a number of years. To help people with this issue, a number of workarounds have been discovered over the years: - Add w3wp.exe to DEP exclusion list - Turn off process recycling in IIS - Use FastCGI rather than ISAPI Previous Comments: ------------------------------------------------------------------------ [2007-05-24 17:44:21] linhardt at aol dot com I have this problem too, but it has nothing to do with PHP as I'm running ASP.NET. My environment is: MS Windows 2003 Server + SP2 IIS 6.0.3790.3959 .NET 2.0.50727 I get both: Faulting application w3wp.exe, version 6.0.3790.1830, faulting module unknown, version 0.0.0.0, fault address 0x01bba980. and Data Execution Prevention Microsoft Windows To help protect your computer, Windows has closed this program. Name: IIS Worker Process Publisher: program publisher ------------------------------------------------------------------------ [2006-10-18 01:32:46] kamikazie at comcast dot net I've noticed this error, too, but only after a PHP page has been loaded. Same basic setup as most, Server 2003, IIS 6, PHP 5.1.4, painstakingly followed the setup instructions. Now a webpage that loads only HTML does not give this error. When I load a page that calls PHP, it throws this error about 5 to 10 minutes after the first page is loaded. ------------------------------------------------------------------------ [2006-07-12 14:25:19] ferrante at aracnet dot com Windows 2003 Server, IIS6, .NET 1.1 & .NET 2.0, php5.2-win32-200607120630 from the snapshots. (Fully Microsoft patched Windows 2003 server machine). Even with all PHP dynamic extensions turned off, crash occurs during IISreset or w3svc service restart. Event as it appears in event log: Event Type: Error Event Source: Application Error Event Category: (100) Event ID: 1000 Date: 07/12/2006 Time: 06:26:45 User: N/A Computer: COMPUTER-NAME Description: Faulting application w3wp.exe, version 6.0.3790.1830, faulting module unknown, version 0.0.0.0, fault address 0x01bba980. For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. Data: 0000: 41 70 70 6c 69 63 61 74 Applicat 0008: 69 6f 6e 20 46 61 69 6c ion Fail 0010: 75 72 65 20 20 77 33 77 ure w3w 0018: 70 2e 65 78 65 20 36 2e p.exe 6. 0020: 30 2e 33 37 39 30 2e 31 0.3790.1 0028: 38 33 30 20 69 6e 20 75 830 in u 0030: 6e 6b 6e 6f 77 6e 20 30 nknown 0 0038: 2e 30 2e 30 2e 30 20 61 .0.0.0 a 0040: 74 20 6f 66 66 73 65 74 t offset 0048: 20 30 31 62 62 61 39 38 01bba98 0050: 30 0 Visual Studio 2005 Debugger gives this for the stack trace: *1 01bba980() 2 msvcrt.dll!__endthread() 3 kernel32.dll!_basethreadst...@8() WinDBG gives this: <Unloaded_php5ts.dll>+0x26a980 msvcrt!endthread+0xab kernel32!GetModuleFileNameA+0xeb the Debug Diagnostic Tool gives this Function Arg 1 Arg 2 Arg 3 Source <Unloaded_php5ts.dll>+26a980 01782ee8 00000000 00000000 msvcrt!endthread+ab 02108c80 00000000 00000000 kernel32!GetModuleFileNameA+eb 77bcb35a 02108c80 00000000 ------------------------------------------------------------------------ [2006-07-12 09:54:10] ferrante at aracnet dot com These are related issues that seem to be describing the same problem: Bug #33373 IIS worker Process continually restarts Bug #37575 Faulting application w3wp.exe Bug #35263 Crash during IIS Restart Adding the w3wp.exe process to the DEP exception list will also mask the problem. ------------------------------------------------------------------------ [2006-05-28 17:42:23] sschefer at scheferonline dot net Deeper investigation of the problem indicates that the reason you are now getting this is because of .NET 2.0. In verison 1.0 and 1.1 it did not throw this exception because it was set to ignore it. If you don't have any security issues, you could probably just ignore them and be O.K. That would not be my choice. The solution is to recompile the DLL's (all of them) with Visual Studio 8. This will then correctly place them within the scope of the IIS authorized extension list. Workaround, back level your server to .NET 1.0 and do not apply any of the security patches. Once done, test and then start applying the security patches. Test each one don't just download them all install them. In a previous post my suggestion of proper ordering does work but it is exremely tedious and not something you want to endure everytime you add or remove functionality. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/36853 -- Edit this bug report at http://bugs.php.net/?id=36853&edit=1