Как настроить HTML.SafeIframe и URI.SafeIframeRegexp в Symfony2 config.yml?
Я старался:
exercise_html_purifier:
default:
Cache.SerializerPath: '% kernel.cache_dir% / htmlpurifier'
custom:
Cache.SerializerPath: '% kernel.cache_dir% / htmlpurifier'
Core.Encoding: 'utf-8'
URI.AllowedSchemes: {http: true}
HTML.SafeIframe: true
URI.SafeIframeRegexp: '% ^ (https:) // (www \ .youtube (- nocookie) \ com / embed / | player \ .vimeo \ .com / video /)%'
Но это дает мне ошибку на URI.SafeIframeRegexp:
ParameterNotFoundException: вы запросили несуществующий параметр «^ (https 🙂 // (www \ .youtube (- nocookie) \ com / embed / | player \ .vimeo \ .com / video /?).?».
Я пытаюсь это:
URI.SafeIframeRegexp: "/^(https?:)?//(www.youtube(?:-nocookie)?.com/embed/|player.vimeo.com/video/)/"
и это:
URI.SafeIframeRegexp: "^(https?:)?//(www.youtube(?:-nocookie)?.com/embed/|player.vimeo.com/video/)"
и это:
URI.SafeIframeRegexp: "#^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)#"
Нет больше ошибок, но все еще efcaped. В моем тексте у меня есть:
<iframe width = "560" height = "315" src = "// www.youtube.com/embed/jAHlQ77lm10" frameborder = "0" allowfullscreen> </ iframe>
редактировать 2: у меня было:
HTML.SafeObject: true
Output.FlashCompat: true
но все равно не работает.
редактировать 3:
Я попробовал HTML.Allowed: iframe, но даже это не работает, потому что другие мои теги не работали.
Мой последний конфиг:
# HTMLPurifier
exercise_html_purifier:
default:
Cache.SerializerPath: '%kernel.cache_dir%/htmlpurifier'
custom:
Cache.SerializerPath: '%kernel.cache_dir%/htmlpurifier'
Core.Encoding: 'utf-8'
URI.AllowedSchemes: { http: true }
HTML.SafeObject: true
Output.FlashCompat: true
HTML.SafeIframe: true
URI.SafeIframeRegexp: "#^(https?:)?//(www\.youtube(?:-nocookie)?\.com/embed/|player\.vimeo\.com/video/)#"
(Я также разместил эту проблему здесь: https://github.com/Exercise/HTMLPurifierBundle/issues/20)
Пока я хочу, чтобы видео появилось.
Задача решена. Моя ошибка заключалась в том, чтобы поставить код для iframe:
<iframe width = "560" height = "315" src = "// www.youtube.com/embed/jAHlQ77lm10" frameborder = "0" allowfullscreen> </ iframe>
в моей текстовой области, так что мне пришлось поместить его в VIEWCODE из tinymce.
Очень глупая ошибка.
Других решений пока нет …