Вот уже не нескольких проектах я встречаю проблему не работающего вебвизора яндекса на сайте под управлением CMS Диафан. Выражается это так, что при просмотре вебвизора отображается сообщение, что код счетчика не установлен или запрещен показ во фреймах. И вроде бы в настройках админки Диафана есть такая опция, но почему-то этой опции не достаточно. Решение проблемы оказалось очень простым с технической стороны, нужно было лишь покопаться в файлах ядра Диафана и найти нужную строку кода. Все дело в одном заголовке Content-Security-Policy: frame-ancestors ‘self’, который отрправляется браузеру. Этот заголовок блокирует возможность встраивать сайт во фрейм вебвизора. Можно просто закоменнтировать в файле /includes/init.php строку кода header("Content-Security-Policy: frame-ancestors 'self'"); Или можно сделать вариант с управлением данной строкой. Для этого в файле /config.php добавляем строку: define("NO_CSP", true); И в файле /includes/init.php добавляем условие if(!NO_CSP) перед нужно
Как исправить не работающий Вебвизор яндекса на CMS Diafan
11 января 202411 янв 2024
7
1 мин