Debian 8 Nginx HTTP2 + ALPN

0

От както google започнаха да обичат https сайтовете, повече се налага масова инсталация на SSL-и където може. Като цяло освен повече тормоз за сървърите имаме и деградация в скоростта. Хубавото е, че 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 et -I карат скрипта да игнорира файловете за контрол на версия. -B да се генерира само бинарен пакет. -j както при make с колко паралелни процеса да се компилира 🙂

 

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

apt remove nginx nginx-*

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

dpkg -i ../*.deb

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

0

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

Firefox bases de données VACUUM et REINDEX

0

Une astuce pour améliorer la vitesse du navigateur Firefox comme base sqlite Aspirateurs ses données. processus de VACUUM Drops base de données que son défragmenter ainsi, diminution de la taille et de la demande rend plus rapide, l'utilisation du disque plus efficacement et peut-être diminué la charge sur votre disque en lecture dans la séquence des secteurs moi. En général, cela s'applique à toute base de données qui n'aspirez pas automatiquement / defrag vous.

Le processus en défragmentant la base de données Firefox est assez trivial – effectuer sqlite3 db fichier VIDE le répertoire de profil de firefox. En linux la route qui lui est habituellement ~ / .mozilla / firefox / random-name.default. En général, vous devriez seulement 1 dirketoriâ dans .mozilla / firefox plus si vous pouvez vérifier le ~ / .mozilla / firefox / répertoire korektnata profiles.ini pour le profil e de votre navigateur. Depuis que je suis pas engagé pour effectuer le processus manuellement comptés script simple pour défragmenter des bases de données:

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

Après l'exécution de la demande de script dans l'histoire, il se lisika chargement est nettement plus rapide. Je suppose que le script avec des modifications mineures peuvent être utilisées dans Mac OS.

p.s Ето варианта и за Mac OS X – testé sur Mac OS X Sierra. Nous devons accélérer delimitara est une nouvelle ligne pour l'espace dans le chemin d'accès au dossier qui contient le profil 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

réflexions le long 25 Linux annuelle

0

Il y a quelques jours, ils ont célébré 25 années Linux. Chaque fois que vous lisez lettre de Linus tomber dans un tel état d'esprit très divertissant. Je n'ai pas l'intention d'expliquer à quel point Linux et quel rôle il joue dans nos vies. Au contraire, je pensais que ce rôle a joué dans ma vie. Ensuite, sauté de nombreuses questions

  • Si aucun linux si je serais BSD ou Dieu ne plaise de Windows administrateur ?
  • Que je serais directeur général
  • Qu'est-ce qui fonctionne si j'étais administrateur – programmeur (me ont gardé….)
  • Qu'est-ce que j'utilise OS
  • Quelle technique que j'utilise – Ordinateur de téléphone – Je serais une autre pomme garçon fan

Debian paquet cassé listes

0

J'ai connu petit drame avec le disque sur mon ordinateur portable. Après Correction du problème avec apt-get update après la fin de la dernière affouillement pas agréable du processus

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.

Comme problème habituel est extrêmement /var/lib/apt/lists/debian.ipacct.com_debian_dists_sid_contrib_binary-i386 évidente ne peut pas être lu correctement. La solution est aussi simple que le diagnostic même du problème:

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

En fin de compte le résultat de synchronisation est forcé et apt.

Haut de page