shicoy Posted July 3, 2015 · Report post Коллеги. Задача немного странная, и к связи прямого отношения не имеет. Суть вот в чем, есть прокся (Squid) через которую офисный планктон состав ходит в Инет. Есть идея, присобачить им на каждую страницу некий html код который внизу будет рисовать плашку с оперативной информацией. Вопрос в том, как подмешать свой код в посещаемые страницы? А-ла как делают нехорошие сотовые операторы :) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
Ivan_83 Posted July 3, 2015 · Report post На nginx вроде есть специальный модуль для этого, он же умеет и проксировать, в правильных руках. Если сквид так сильно нужен, то нгинх может быть апсримом или стоять перед сквидом. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
MMM Posted July 3, 2015 · Report post обычно в шапку дописывают ссылку на js, который уже отрисовывает остальное. но лучше сделать плагин в браузер и без всяких сквидов выводить информацию на панельку. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shicoy Posted August 13, 2015 · Report post Вернулся из отпуска, апну тему. Если честно, не совсем понятно как на Nginx или Squid (не суть важно) добавить ко всем страницам определенный код (html или js, опять же не важно). Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
swelf Posted August 13, 2015 (edited) · Report post нужен сквид с поддержкой ecap ecap_enable on loadable_modules /usr/local/lib/ecap_adapter_modifying.so ecap_service eRespmod respmod_precache 0 ecap://e-cap.org/ecap/services/sample/modifying victim=</body> replacement-src=/usr/local/squid/var/test.html adaptation_access eRespmod allow blocknet заменяем закрывающий тег </body> на содержимое /usr/local/squid/var/test.html <script type="text/javascript"> function init() { //запрашиваем данные которые хотим заинжектить $.get("http://<server>/url",{}, function(data){ $('body').prepend(data); }); } function waitForJQuery() { if (typeof jQuery != 'undefined') { init(); } else { setTimeout(waitForJQuery, 200); } } if (window.location == window.parent.location ){ if (typeof jQuery == 'undefined') { var script = document.createElement('script'); script.type = "text/javascript"; script.src = "http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"; document.getElementsByTagName('head')[0].appendChild(script); } waitForJQuery(); } </script> </body> nginx тоже может модифицировать содержимое, но я уже не стал заморачиваться после реализации на сквиде. Edited August 13, 2015 by swelf Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
shicoy Posted August 18, 2015 · Report post Спасибо большое) Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...