Действительно ли возможно добавить html/js к страницам, кэшируемым лаком?

Кажется, что Вы планируете пройти проверку подлинности на основе имени пользователя и пароля?

В прошлый раз, когда я должен был установить что-то подобное, я использовал auth-user-pass-verify опцию. Это говорит OpenVPN проводить входящее имя пользователя и пароль к пользовательскому сценарию, затем предоставлять или запрещать доступа на основе кода возврата из сценария.

Это - довольно удобное решение, поскольку обычно можно ожидать язык сценариев выбора иметь хороший набор модулей для различных видов аутентификации. Это - также очень гибкое решение в определении аутентификации criterias.

При предположении, что домен Windows является Active Directory, возможно, Вы могли бы хотеть основывать свой сценарий на упрощенном модуле автора Kerberos? В конце концов, единственный ответ, в котором Вы нуждаетесь, является истинным или ложью.

В любом случае auth-user-pass-verify опция вполне прилично documentated в openvpn (8) страница справочника.

0
задан 25 May 2012 в 21:31
3 ответа

Вы можете использовать mod_ext_filter из apache:

ExtFilterDefine fixtext mode=output intype=text/html cmd="/bin/sed s/</body>/<analytics code></body>/"

<Location />
    # core directive to cause the fixtext filter to
    # be run on output
   SetOutputFilter fixtext
</Location>

Для лака у вас есть ESI. См .: Боковая сторона включает для получения дополнительных сведений.

1
ответ дан 4 December 2019 в 21:47

Короткий ответ: вы не можете. Varnish позволяет редактировать только исходящие заголовки, но не содержимое исходящего ответа. Это позволяет вам добавить код C в файл vcl, чтобы вы могли что-то взломать вместе, но он не предназначен для этого.

В противном случае я бы порекомендовал варианты Мирчи; либо с помощью ESI, либо с изменением apache или любого другого веб-сервера, который вы используете для внедрения кода.

На всякий случай, поскольку ваш вопрос не прояснил, вам не нужно заставлять Varnish добавить код мониторинга Google Analytics для мониторинга сайтов, только этот код находится на странице. Весь код аналитики работает на стороне клиента, совершая звонки прямо из браузера посетителя.

Не забудьте настроить лак, чтобы игнорировать аналитические файлы cookie - ваш внутренний веб-сервер этого не делает.

0
ответ дан 4 December 2019 в 21:47

Я написал VMOD для изменения тела ответа в лаке перед его отправкой клиенту. Используйте его на свой страх и риск https://github.com/aivarsk/libvmod-rewrite

0
ответ дан 4 December 2019 в 21:47

Теги

Похожие вопросы