Debian 8 Nginx HTTP2 + ALPN

0

От както google започнаха да обичат https сайтовете, повече се налага масова инсталация на SSL-и където може. Като цяло освен повече тормоз за сървърите имаме и деградация в скоростта. Хубавото е, que HTTP2 стандарта вече над година и половина се интегрира във всички големи http сървъри и браузъри и поддръжката му достатъчно стабилна. За съжаление debian stable няма пакети които да поддържат HTTP2 в основните http сървъри. Версиите които са ни необходими за да работи HTTP2 са както следва:

  • apache > 2.4.17
  • Nginx > 1.9.5
  • останалите персонално не ме вълнуват (lighttpd имат евентуално планирано…..)

При мен мешаницата е голяма и според зависи се ползва apache или nginx. Все още не съм си играл да пускам на apache http2 на debian 8 тъй като не ми се е налагало но в backports репото го има така, че няма да е голям проблем. За nginx е вече го играхме няколко пъти. Като цяло стъпките са няколко и относително прости:

  1. Добавяме nginx официалното репов debian весията е 1.6.х 🙄
  2. Инсталираме си openssl от backports към момента е 1.0.2ктова ни трябва за ALPN подръжката за да може всичко да работи и да е бързичко
  3. инсталираме си devscriptsтук е момента да споделя че ще си билднем наш пакет защото официалният е компилиран с openssl 1.0.1t при който не работи ALPN и браузърите не му реагират добре и работи http2-то само ако го форсираш
  4. инкрементираме версията за да не правим hold циганията с пакетите а като има нова версия само да синкенм сорсовете

Нека да започнем стъпка по стъпка

Добавяне на nginx repo

deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx

Добавяне на openssl 1.0.2k и dev библиотеката в противен случай ще си го билднем пак с 1.0.1t което не ни е целта


echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list

apt update && apt install libssl-dev -t jessie-backports

 

Сега остана да си добавим библиотеките необходими за компилацията на nginx


apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Ако сте работили коректно трябва да имате структура от рода на


~/nginx-build # ll
total 1004
drwxr-xr-x 10 root root   4096 Feb 21 18:37 nginx-1.10.3
-rw-r--r--  1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz
-rw-r--r--  1 root root   1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc
-rw-r--r--  1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz

Влизате в папта в която е разархивиран сорса на nginx в моят случай е и nginx-1.10.3 изпълнявате команда с която инкрементирате версията, аз лично предпочитам да добавя 1 към настоящият билд

debchange --newversion 1.10.3-1

След като си добавите changelog-а по избор може да се пристъпи към същинската компилация

debuild -us -uc -i -I -b -j6

Малко разяснение по конфигурацията на командата:

-us -uc казват на скрипта да неподписва” .dsc и .changes файловете. -i y -I карат скрипта да игнорира файловете за контрол на версия. -B да се генерира само бинарен пакет. -j както при make с колко паралелни процеса да се компилира 🙂

 

След като приключи горният процес следва да си инсталираме нашите нови пакети. Ако имате вече инсталиран nginx е добре да го деинсталирате

apt remove nginx nginx-*

Също не лоша идея е да си направите бекъп на nginx папката в /etc. По принцип при ъпгрейд от 1.6.5 a 1.10.3 нямах драми но никога не се знае. Новите пактеи се намират в папката от по горно ниво и следва да се инсталират с команда от рода на:

dpkg -i ../*.deb

Ако всичко е минало гладко ви остава само да си пуснете nginx процеса и да си се конфигурира http2 което вече не е цел на тази статия.

0

Раздялата не е във думите,
раздялата е в премълчаното,
в страха, че нещо ще изгубиш,
в страха, че вече нищо нямаш.
Раздялата не е във времето,
в което тръгваш ти сама,
в което сбогом ти си вземаш,
раздялата е след това

Firefox bases de datos de vacío y REINDEX

0

Un truco inteligente para mejorar la velocidad del navegador Firefox como Aspiradora SQLite basado sus datos. proceso de vacío cae base de datos como la de este modo desfragmentar, disminución del tamaño y la demanda hace que sea más rápido, el uso del disco de manera más eficiente y posiblemente disminución de la carga en el disco como leído en la secuencia de los sectores me. Generalmente esto se aplica a cualquier base de datos que no aspire automáticamente / desfragmentación mismo.

El proceso de desfragmentación de la base de datos de Firefox es bastante trivial – realizar VACÍO db-file sqlite3 el directorio del perfil de Firefox. En Linux el camino a lo general es ~ / .mozilla / firefox / random-name.default. En general, sólo deben 1 dirketoriâ en .mozilla / firefox más si se puede comprobar el ~ / .mozilla / firefox directorio korektnata / profiles.ini para el perfil de correo de su navegador. Ya que no estaba comprometido para llevar a cabo el proceso contados manualmente simple script para desfragmentar las bases de datos:

for db in $(find ~/.mozilla/firefox/$(grep Path ~/.mozilla/firefox/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
   echo "VACUUM ${db}"
   sqlite3 ${db} VACUUM
   sqlite3 ${db} REINDEX
done

Después de ejecutar el script de la demanda en la historia, que en sí la carga de lisika es significativamente más rápido. Creo que el guión, con modificaciones menores se puede utilizar en Mac OS.

p.s Ето варианта и за Mac OS X – probado en Mac OS X Sierra. Tenemos que acelerar delimitara es una nueva línea de espacio en la ruta de la carpeta que contiene el perfil de Firefox

OIFS="$IFS"
IFS=$'\n'
for db in $(find ~/Library/Application\ Support/Firefox/$(grep Path ~/Library/Application\ Support/Firefox/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

Размисли покрай 25 годишни Linux

0

Hace unos días celebraron 25 Linux años. Siempre que leas carta de Linus caer en un estado de ánimo muy entretenido. No tengo ninguna intención de explicar la importancia de Linux y cuál es el papel que desempeña en nuestras vidas. Más bien, pensé qué papel juega en mi vida. Entonces saltado muchas preguntas

  • Si no linux si me gustaría ser BSD o Dios no lo quiera administrador de Windows ?
  • Ya sea que estaría gerente general
  • Lo que funcionaría si yo era administrador – programador (me han mantenido….)
  • ¿Qué sistema operativo que utilizo
  • Каква техника щях да използвамтелефон компютърсигурно щях да съм поредният apple fan boy

Debian broken package lists

0

Преживях малка драма с диска на лаптопа ми. След фиксването на проблема при apt-get update лъсваше следният крайно не приятен край на процеса

E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/debian.ipacct.com_debian_dists_sid_contrib_binary-i386_Packages
E: The package lists or status file could not be parsed or opened.

Както обикновено проблема е крайно очевиден /var/lib/apt/lists/debian.ipacct.com_debian_dists_sid_contrib_binary-i386 не може да бъде прочетен коректно. Фикса е също толкова елементарен колкото и самата диагностика на проблема:

 rf -f /var/lib/apt/lists/*

В крайна сметка резултата е форсирана синхронизация на apt.

Ir arriba