Din moment ce Google a început să iubească site-urile https, implementare necesare mai multe SSL și în cazul în care ați. În general, mai mult decât hărțuirea pentru servere și au degradare în viteză. Vestea buna este ca, că HTTP2 standard, de peste un an și jumătate este integrat în toate serverele HTTP majore și browsere și menținerea suficient de stabile. Din păcate, debian stabil nu exista pachete pentru a menține HTTP2 în principalele servere HTTP. Versiunile care avem nevoie pentru a lucra HTTP2 sunt după cum urmează:

Pentru mine amestecatură este mare și se bucură de conformitate depinde de apache sau Nginx. Eu încă nu s-au jucat pentru a rula lor de http2 apache de debian 8 deoarece nu au avut, dar backportări repo avea asa, aceasta nu va fi o mare problemă. Pentru nginx am jucat deja de mai multe ori. În general, pașii sunt puține și relativ simple:

  1. Add repo oficială Nginx – ediția debian, vă rugăm să 1.6.h este 🙄
  2. Instalati OpenSSL dvs. din backportări este în prezent 1.0.2k – că trebuie să ALPN comandă de întreținere pentru ca totul să funcționeze și este barzichko
  3. instalați devscripts dvs. – Acum este timpul pentru a partaja, care va bildnem pachetul nostru, deoarece oficial a fost compilat cu 1.0.1t OpenSSL care nu funcționează ALPN și browserele nu au răspuns bine și să lucreze http2 numai în cazul în care forțat
  4. Versiunea incrementat nu dețin țigani cu pachete și ca o versiune nouă sursă numai pentru sinkenm

Să începem pas cu pas

Add repo nginx

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

Add 1.0.2k OpenSSL bibliotecă și dev altfel vom bildnem din nou, cu care nu 1.0.1t scopul nostru

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

 

Acum, la stânga pentru a adăuga biblioteci necesare pentru compilarea Nginx

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Dacă sunteți de lucru corect, trebuie să aibă o structură cum ar fi

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

Pentru a intra în папта în care utilizatorii de codul de nginx în cazul meu este și nginx-1.10.3 executa comanda cu care инкрементирате versiune, Eu personal prefer să adăugați 1 pentru a construi acest

debchange --newversion 1.10.3-1

După ce adăugați un changelog și, opțional, pentru a trece la compilarea efectivă

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

Un pic de clarificare privind comanda de configurare:

-ne -uc spun script-ul nu “semnat” .și fișiere .changes DSC. -eu și -eu cauza script-ul pentru a ignora fișierele de control al versiunii. -B pentru a genera doar pachet binar. -j ca și în modul de a face proces paralel pentru a compila 🙂

 

După ce procesul de mai sus pentru a instala noile noastre pachete. Dacă ați instalat deja nginx este mai bine să dezinstalați

apt remove nginx nginx-*

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

dpkg -i ../*.deb

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

Преживях малка драма с диска на лаптопа ми. След фиксването на проблема при 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.

Meu editor de text favorit geany. Este foarte minimalist AICI care suportă o gamă largă de limbi – coajă, PHP, piton, Cetc. În timp ce există iad este de autocompletare agil. Îi lipsește ocazional mai plăcut posibil, dar în acest moment pentru mine este mai mult decât suficient. Am început curs online Programare Python на SoftUni – pentru a actualiza cunoștințele lor și pentru a face upgrade pentru că nu sunt după adecvate ce se întâmplă cu piton 3. Lectorii cursului recomandat PyCharm ca IDE pentru programarea Pyton, dar pentru mine departe de gustul meu, folosesc în mod natural Geany pentru exerciții.

In timpul cursurilor dar dureros 2 penuria

  1. Python și completarea automată expirată de documentare la funcții și metode
  2. nici o validare pentru standard de pep8

Vestea bună e că Geany este suficient de flexibil pentru a în funcție de configurație și pot fi ușor suplimentate de la astfel de lipsă. lăsa adăugați documentație piton IDE nostru:

  • trage dvs. de Următorul script undeva în calea noastră ca / ​​usr / bin nu uitați să-l facă executabil
  • edita fișierul ~ / .config / geany / filedefs / filetypes.python în setările parțiale adăugați următoarea linie context_action_cmd = pydocw% s. Dacă nu adaugă doar numele binarkata din etapa anterioară. Repornească Geany dacă se execută.
  • Avem deja un context de acțiune, care va elimina informații despre funcția. Аз си добавих shortcut за да ми е по удобно като не ми е ясно някоя функционалност. Leach-mi această abordare foarte mult pentru că îmi place mă enervează abordarea NetBeans.

Până aici e bine. Apoi am dorit foarte mult să aibă un cod de validare scrieți – dacă am scrie în conformitate cu standardele general acceptate sau scrie orice urâțenie. În general, am găsit din nou tutorialče modul în care lucrurile se întâmplă, dar este un pic depășit – Geany a tot ceea ce a construit în el însuși trebuie doar să-l instalați pep8 pachet. În Debian apt-get install pep8 funcționează în singur alt distrota pentru a descoperi modul în care magia se întâmplă. În al doilea buton de meniu Build (cel puțin pentru mine) е Lint след кликването му ще откриете колко грозен код сте сътворили 😀

Screenshot from 2016-01-11 20-42-21

Това е общи линии как да накарате вашият Geany да работи по добре с Python и същевременно да продължи да бъде бърз без да кара процесора ви да иска да си тегли куршума.

pentru unii (nu foarte clar motivele mele) Nu am reușit să faceți upgrade daemon în postgresql distributiv upgrade-una dintre serverele mele Debian. demon are o caracteristică postgresql frumos nu a început să utilizeze noua versiune (spre deosebire de Mysql) în timp ce nu convinge, noul este pe deplin compatibil cu lansarea – extrem de util pentru baze de date mari. Procesul de actualizare limitată la următoarele 2 trepte:

  • pg_dropcluster
  • pg_upgradecluster

Înainte de a izdropite daemon de cluster pg trebuie să fie oprit!

pg_dropcluster 9.4 main

Тази команда преминава бързо, след което преминаваме към съществената частсамият ъпгрейд

pg_upgradecluster 9.1 main
Disabling connections to the old cluster during upgrade...
Restarting old cluster with restricted connections...
Creating new cluster 9.4/main ...
config /etc/postgresql/9.4/main
data   /var/lib/postgresql/9.4/main
locale en_US.UTF-8
Flags of /var/lib/postgresql/9.4/main set as -------------e-C
port   5433
Disabling connections to the new cluster during upgrade...
Roles, databases, schemas, ACLs...
Fixing hardcoded library paths for stored procedures...
Upgrading database postgres...
Analyzing database postgres...
Fixing hardcoded library paths for stored procedures...
Upgrading database template1...
Analyzing database template1...
Fixing hardcoded library paths for stored procedures...
Upgrading database xpqt...
Analyzing database xpqt...
Re-enabling connections to the old cluster...
Re-enabling connections to the new cluster...
Copying old configuration files...
Copying old start.conf...
Copying old pg_ctl.conf...
Copying old server.crt...
Copying old server.key...
Stopping target cluster...
Stopping old cluster...
Disabling automatic startup of old cluster...
Configuring old cluster to use a different port (5433)...
Starting target cluster on the original port...
Success. Please check that the upgraded cluster works. If it does,
you can remove the old cluster with

pg_dropcluster 9.1 main

Ако всичко е минло гладко трябва да получите съобщение като горното което ви подканва да разкарате старите данни от pg.

pg_dropcluster 9.1 main

В края на тая тарпана вече можете да стартирате процеса си отново. При мен базите са малки и за съжаление не мога да дам оценка за колко време преминава същественият ъпгрейд.

noul Debian Stabil un fapt aproximativ o săptămână și mâinile itched pentru a face upgrade virtualkata la ea, dar nu am avut timp azi. Din ziua în care am început mai devreme, am decis să-mi dedica timpul pentru a face upgrade. Промених сорс листа ми като промених wheezy на jessie

sed -i "s/wheezy/jessie/g" /etc/apt/sources.list && apt-get update

aici a urlat 2 oglinzi:

  • MariaDB – pe oglinda nu mai este nevoie Jessie include versiunea 10.0.6 în mine nu am sta bine multe. atunci 5.5 michetodb si MySQL nu sunt destul de consistente, deoarece în timp, ea se întoarse înapoi la MySQL 5.5.42 – este implicit Jessie
  • DotDeb – L-am folosit înainte de php55 aici este, de asemenea, inutil, deoarece Jessie vine cu 5.6.7-1

Dupa ce lovind oglinzile suplimentare și se întoarse de MariaDB la Mysql apt-get dist-upgrade al meu curat, repornirea sistemului și a trebuit să Debian 8.0. Am deschis server și meu web spre surprinderea mea a lucrat aici o poveste lungă – câteva cuvinte Nginx și am compilat de la sursă suplimentară cu directivele suplimentare. dpkg -l nginx-plin 1.2 Da cineva a uitat să-pachete Unhold nu. Unhold și upgrade totul este în grafic și nginx-rupere 😆 . Nginx și proceselor de lucru și interogări de proces-php fpm este și runnign, dar codul php nu este executat și nu scuipa erori 🙄 favoritele mele.

După o căutare de informații cu privire la modificările am găsit următorul pasaj

problemele de configurare FastCGI ============================

nginx fost expediat un fastcgi_params modificat, care a declarat SCRIPT_FILENAME fastcgi_param. Această linie a fost eliminată acum. De acum încolo suntem, de asemenea, de transport maritim fastcgi.conf din depozit din amonte, care include o valoare a parametrului SCRIPT_FILENAME sănătos.

Asa de, dacă utilizați fastcgi_params, aveți posibilitatea să încercați să treceți la fastcgi.conf sau manual, setați params relevante.

bingo. Am schimbat gazdele virtuale pentru a utiliza fastcgi.conf în loc să intruziuni nepoliticos și totul aprins. Apoi a lovit un dif rapid pentru a vedea care este diferența dintre 2 config

diff /etc/nginx/fastcgi_params /etc/nginx/fastcgi.conf
1a2
> fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

Ceea ce mi-a amintit că configurații de turnare în pahare mari în gazde virtuale sunt o idee misto. Rămâne să recompilarea din nou Nginx și programele de completare care doresc mod_sec + PageSpeed ​​dar care pot aștepta. Mult mai important,, че правилото ми се повтори ако нямаш огледа от 3-ти източници и кастъм изпълнения Debian не се чупи при dist-upgrade!

https://www.youtube.com/watch?v=gEQCny6zNF0