ديبيان 8 Nginx HTTP2 + ALPN

0

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

  • أباتشي > 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 و -I карат скрипта да игнорира файловете за контрол на версия. -B да се генерира само бинарен пакет. -j както при make с колко паралелни процеса да се компилира 🙂

 

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

apt remove nginx nginx-*

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

dpkg -i ../*.deb

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

0

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

فايرفوكس قواعد البيانات فراغ وREINDEX

0

واحد خدعة ذكية لتحسين سرعة متصفح فايرفوكس مثل مكانس سكليتي مقرها بياناته. عملية فراغ قطرات قاعدة البيانات كما لها بالتالي تجزئة, انخفض حجم الطلب ويجعل من أسرع, استخدام القرص أكثر كفاءة وربما انخفضت الحمل على القرص للقراءة في تسلسل القطاعات لي. عموما هذا ينطبق على أي قاعدة البيانات التي لا فراغ تلقائيا / ديفراغ نفسك.

هذه العملية عن طريق تجزئة قاعدة البيانات فايرفوكس تافهة جدا – نفذ فراغ sqlite3 ديسيبل ملف الدليل الشخصي من فايرفوكس. في لينكس الطريق إلى ذلك هو عادة ~ / .mozilla / فايرفوكس / عشوائي-name.default. بشكل عام، يجب عليك فقط 1 dirketoriâ في .mozilla / فايرفوكس أكثر إذا يمكنك التحقق من ~ / .mozilla / فايرفوكس / دليل korektnata profiles.ini لملف تعريف البريد متصفحك. حيث لم تشارك أنا لتنفيذ عملية أحصت سيناريو بسيط لإلغاء تجزئة قواعد البيانات يدويا:

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

بعد تنفيذ الطلب النصي في التاريخ هو نفسه تحميل lisika هو أسرع بكثير. أعتقد أن السيناريو مع تعديلات طفيفة يمكن استخدامها في نظام التشغيل Mac OS.

p.s Ето варианта и за نظام التشغيل Mac OS X – اختبار على نظام التشغيل Mac OS X سييرا. نحن بحاجة إلى تسريع delimitara هو خط جديد للمسافة في المسار إلى المجلد الذي يحتوي على الملف الشخصى فايرفوكس

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 لينكس السنوي

0

قبل بضعة أيام احتفلوا 25 سنوات لينكس. كلما قرأت خطاب لينوس الوقوع في مثل هذا المزاج مسلية للغاية. ليس لدي أي نية لشرح كيفية المهم لينكس والدور الذي تلعبه في حياتنا. بدلا من ذلك، اعتقدت ما الدور الذي لعبته في حياتي. ثم قفز العديد من الأسئلة

  • اذا لم يكن لينكس ما اذا كنت تريد ان تكون BSD أو لا سمح الله ويندوز المشرف ?
  • ما اذا كنت تريد ان تكون المدير العام
  • ما يمكن أن تعمل إذا كنت المسؤول – مبرمج (وقد دفعني لل….)
  • ما نظام التشغيل يمكنني استخدام
  • ما يمكنني استخدام تقنية – الكمبيوتر الهاتف – سأكون آخر تفاحة مروحة صبي

ديبيان قوائم حزمة مكسورة

0

لقد واجهت الدراما قليلا مع القرص على جهاز الكمبيوتر المحمول. بعد إصلاح المشكلة مع الرابطة بين الحصول على التحديث بعد نهاية نظف النهائي ليس لطيفا من عملية

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/*

تزامن نهاية المطاف نتيجة يجبر وشقة.

اذهب الى القمة