I have a WordPress web site running on Windows Server 2012 R2 via IIS and PHP 7.1.1. Everything works well, except once or twice a day, the site returns a white screen (HTTP 500) and the error log shows the following errors:
[17-Jan-2019 15:29:15 UTC] PHP Warning: require_once(D:\Webs\www.WebS): failed to open stream: No such file or directory in D:\Webs\www.WebSite.com\wp-content\plugins\captcha\bws_menu\bws_include.php on line 91
[17-Jan-2019 15:29:15 UTC] PHP Fatal error: require_once(): Failed opening required 'D:\Webs\www.WebSite.com/wp-content/plugins/captcha/bws_menu/bws_functions.php' (include_path='.;C:\php\pear') in D:\Webs\www.WebSite.com\wp-content\plugins\captcha\bws_menu\bws_include.php on line 91
FYI - I have changed the path off of D:\Webs to show a fictitious website name.
Notice that the path is cut off. Sometimes the path is cut off in different places. Sometimes it's to completely different files for completely different plugis. Sometimes it's even complaining about WordPress core. The only thing consistent is that once this happens, the exact same path is the failure until I recycle the App Pool. When it happens again, it's a different file, but complains about the same file until I recycle the App Pool.
The only workaround I have is to recycle the app pool or set IIS to automatically recycle on a schedule. Neither of these are good long term solutions.
I should also note that this server has about 10 other WordPress sites running. They each have their own App Pool and run from their own folder. They never, ever have this problem.
Also, resources on the server are excellent. At the highest traffic times, the CPU's are less than 50% and there is less than 75% memory utilization. There are also many gigabytes of free disk space on the system volume as well as the data volume the site runs from.
Please don't reply with "don't run PHP or WordPress on Windows/IIS." That's not helpful - I cannot change the environment and I need to figure out the solution.
I have 100% control of the server environment and can debug/troubleshoot as needed. So if there's any way to get more information, please let me know!