У меня запущена веб-работа в службе приложений Azure, которая начинается с session_start();
команда.
Сначала я получил эту ошибку:
Предупреждение PHP: session_start (): не удается найти обработчик сохранения ‘wincache’ —
Не удалось запустить сеанс в
D: \ local \ Temp \ jobs \ triggered \ myCron \ a4ypumbv.4i2 \ MyCron \ myCron.php в
строка 3
То, что я в конечном итоге делал, было в моей Службе приложений -> Настройки приложения, и я установил пользовательскую настройку PHP_INI_SCAN_DIR
установлен в D:\home\site
, вот так:
Затем внутри D:\home\site
каталог, я загрузил файл с названием phpconfig.ini
и внутри я поместил это:
extension=D:\home\site\ext\php_wincache.dll
я пошел в https://www.iis.net/downloads/microsoft/wincache-extension и скачал соответствующую версию WinCache — WinCache 1.3 for PHP 5.6
от SourceForge. После распаковки .exe
файл, я скопировал php_wincache.dll
файл в мой D:\home\site\ext
папка.
Теперь, когда я запускаю webjob, я получаю ту же ошибку, но также и другое сообщение об ошибке прямо перед тем, как wincache
файл уже загружен:
Предупреждение PHP: модуль ‘wincache’ уже загружен в Unknown в строке 0
Предупреждение PHP: session_start (): не удается найти обработчик сохранения ‘wincache’ —
Не удалось запустить сеанс в
D: \ local \ Temp \ jobs \ triggered \ myCron \ a4ypumbv.4i2 \ MyCron \ myCron.php в
строка 3
Как я могу заставить эти предупреждения полностью исчезнуть? Кто-нибудь сталкивался с такой же проблемой раньше?
wincache
уже установлен и включен в службе приложений Azure.
В этом случае вам больше не нужно звонить session_start()
вручную Azure будет запускать сессии на каждой странице автоматически.
Других решений пока нет …