shicoy Posted July 3, 2015 Posted July 3, 2015 Коллеги. Задача немного странная, и к связи прямого отношения не имеет. Суть вот в чем, есть прокся (Squid) через которую офисный планктон состав ходит в Инет. Есть идея, присобачить им на каждую страницу некий html код который внизу будет рисовать плашку с оперативной информацией. Вопрос в том, как подмешать свой код в посещаемые страницы? А-ла как делают нехорошие сотовые операторы :) Вставить ник Quote
Ivan_83 Posted July 3, 2015 Posted July 3, 2015 На nginx вроде есть специальный модуль для этого, он же умеет и проксировать, в правильных руках. Если сквид так сильно нужен, то нгинх может быть апсримом или стоять перед сквидом. Вставить ник Quote
MMM Posted July 3, 2015 Posted July 3, 2015 обычно в шапку дописывают ссылку на js, который уже отрисовывает остальное. но лучше сделать плагин в браузер и без всяких сквидов выводить информацию на панельку. Вставить ник Quote
shicoy Posted August 13, 2015 Author Posted August 13, 2015 Вернулся из отпуска, апну тему. Если честно, не совсем понятно как на Nginx или Squid (не суть важно) добавить ко всем страницам определенный код (html или js, опять же не важно). Вставить ник Quote
swelf Posted August 13, 2015 Posted August 13, 2015 (edited) нужен сквид с поддержкой 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
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.