Архив метки: HTTP

HTTP: редиректы, POST и GET запросы, и «потерянные» данные

23 ноября 2019
 

 Имеется приложение, которое должно принимать данные через POST-запросы от клиентов. Перед этим приложением имеется некий прокси, не важно какой — AWS Application Load Balancer, NGINX или любой другой. Мы изначально столкнулись с проблемой на AWS ALB, потом я начал тестить на NGINX, что бы искючить влияение самого AWS-сервиса — воспроизводится везде, т.к. не зависит от… Читать далее »

NGINX: мульти-бранч деплой приложения с использованием NGINX map и HTTP Headers

26 июня 2019
 

 Имеется стандартный LEMP — NGINX, PHP-FPM. Приложение — Yii-фреймворк, который деплоится из Jenkins Ansible-ролью с помощью модуля synchronize на хосты в каталог /data/projects/prjectname/frontend/web, который является root в конфиге виртуалхоста NGINX. Задача: создать возможность деплоя из Jenkins приложения из разных бранчей — на хосте одновременно должны быть задеплоены разные версии приложения, доступ к которым будет определяться… Читать далее »

NGINX: gzip и ETag weak validation

20 сентября 2018
 

  ETag Собственно сам ETag является идентификатором ресурса, запрошенного клиентом (браузером): если изменений нет, то etag не меняется, если изменения были — изменится и его etag. См. тут>>>, тут>>> и тут>>>. Пример его работы — проверяем URL: [simterm] $ curl -I etag.rtfm.co.ua HTTP/1.1 200 OK Server: nginx/1.10.3 … ETag: «5ba22fcb-6» Accept-Ranges: bytes [/simterm] Теперь добавляем —header If-None-Match, в… Читать далее »

Python: модуль requests

3 июня 2015
 

 requests — HTTP библиотека Python. Ближайший аналог — urllib2. Содержит в себе встроенную библиотеку urllib3. Домашняя страница проекта — Requests: HTTP for Humans. Установить requests можно  спомощью PIP: $ pip install requests … Installing collected packages: requests Successfully installed requests-2.7.0

Tomcat: трюки — использование переменных в server.xml

27 мая 2014
 

 Задача — определить порт для коннекторов во время запуска Apache Tomcat. Имеется сервер, на котором запускается несколько экземпляров Tomcat, от разных пользователей. У каждого пользователя есть свой скрипт startup.sh, расположенный, к примеру, в домашней директории — в нём мы создадим перебор переменной ENV (environment) -и в зависимости от неё будем задавать порты Tomcat-а. Переменная ENV… Читать далее »

Apache HTTP Server + SSL: пример быстрой настройки

20 декабря 2011
 

 Пример приведен на FreeBSD 8.2 + Apache HTTP Server 2.2 + OpenSSL 0.9.8q. Все действия далее выполняем от root-a. Убедимся, что Apache готов к работе с SSL. В файле конфигурации /usr/local/etc/apache22/httpd.conf должна быть раскомментирована строка: LoadModule ssl_module libexec/apache22/mod_ssl.so