Я использую мультисайт WordPress (4.5.3) на Windows IIS (8.5.96).
Время от времени сервер падает с ошибкой Wincache. Я обновил компоненты PHP и Wincache на сервере. Потому что на данный момент я должен наблюдать за сервером 24/7.
Faulting application name: php-cgi.exe, version: 5.6.22.0,time stamp: 0x57468660
Faulting module name: php_wincache.dll,version: 1.3.7.10, time stamp: 0x56ccce50
Exception code: 0xc0000005
Fault offset: 0x00015247
Faulting process id: 0x8cc
Faulting application start time: 0x01d1f8244e589ffc
Faulting application path: C:\Program Files (x86)\PHP\v5.6\php-cgi.exe
Faulting module path: C:\Program Files (x86)\PHP\v5.6\ext\php_wincache.dll
Report Id: 7fbf700b-6418-11e6-80cc-005056b77a12
Faulting package full name:
Faulting package-relative application ID:
Сервер:
-Windows Server 2012 R2 Standard
-Installed memory Ram 4 Gb
-Php-cgi.exe (5.6.22.0)
-Wincache.dll (1.3.7.10)
IIS:
-IIS 8.5.96
-Php 5.6
Настройка IIS:
-Idle timeout 300
-Activity timeout 300
-Request timeout 300
-Application pool > Recycling 20 min.
-Application pool > Idle time-out 18 min.
WordPress и используемые плагины:
-Wp multisite 4.5.3
-Atom Linkedin (1.0.0)
-Contact form 7 (4.3.1)
-Custom Facebook Feed (2.3.10)
-Redirection (2.4.3)
-Rename wp-login (2.5.5)
-Revolution Slider (5.0.6)
-W3 Total Cache (0.9.4.1)
-Wordfence Security (6.1.14)
-WordPress MU Domain Mapping (0.5.5.1)
-WP-Mail-SMTP (0.9.5)
-Yoast SEO (3.0.7)
Это проблема с сервером или неправильная конфигурация? Или это php, WordPress или какой-либо другой программный вопрос?
Не уверен, должен ли это быть ответ или комментарий, но здесь идет.
Код исключения 0xc0000005 довольно часто означает нарушение доступа к общей памяти. В разных местах вы найдете информацию о добавлении
wincache.namesalt=0x200000
к вашей конфигурации. Это адрес общей памяти для хранения объектов.
С другой стороны: я использую ту же версию WinCache в своей среде, но она не используется много (общий хостинг). Клиенты используют OPCache, и с OPCache часто встречается один и тот же код исключения. Стало меньше когда я добавил
opcache.mmap_base=0x20000000
к нашей конфигурации PHP.ini, но она еще не закончена.
Нарушение общей памяти не случиться с PHP 7. Если вы можете, переключитесь на PHP 7.
Некоторые справочные ссылки:
https://secure.php.net/manual/en/opcache.configuration.php#ini.opcache.mmap-base , https://www.apachelounge.com/viewtopic.php?p=29838#29838 , https://secure.php.net/manual/en/wincache.configuration.php#ini.wincache.namesalt , https://www.saotn.org/php-wincache-on-iis/
Других решений пока нет …