Da Google gestartet https-Sites zu lieben, notwendiger Einsatz von SSL-und wo Sie. Insgesamt mehr als Belästigung für Server und haben eine Verschlechterung der Geschwindigkeit. Die gute Nachricht ist,, dass HTTP2 Standard seit über einem Jahr und eine Hälfte ist in allen wichtigen http-Server und Browser integriert und die Aufrechterhaltung stabiler genug. Leider debian stabil keine Pakete HTTP2 in den wichtigsten http-Server zu erhalten. Versionen, die wir brauchen HTTP2 zu arbeiten, sind wie folgt:

Für mich ist mishmash groß und nach depends genießt Apache oder nginx. Ich habe noch nicht zu ihrem Lauf von Apache http2 von debian gespielt 8 weil sie nicht über hatte aber updates Repo haben es so, es wird kein großes Problem sein,. Für nginx haben wir bereits mehrmals gespielt. Im Allgemeinen sind die Schritte wenigen und relativ einfachen:

  1. In nginx offiziellen Repo – Die Debian-Ausgabe, 1.6.h bitte ist 🙄
  2. Installieren Sie OpenSSL von updates ist derzeit 1.0.2k – dass wir müssen ALPN Instandhaltungsauftrag für alles und zu arbeiten, ist barzichko
  3. Installieren Sie Ihre devscripts – Jetzt ist die Zeit, das zu teilen unser Paket bildnem, weil die Beamten mit OpenSSL 1.0.1t kompiliert wurde, die nicht ALPN funktioniert und Browsern reagieren nicht gut und arbeiten http2-nur, wenn es gezwungen
  4. erhöht Version nicht halten Zigeuner mit Paketen und als neue Version einzige Quelle für sinkenm

Lassen Sie uns beginnen Schritt für Schritt

In nginx Repo

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

In OpenSSL 1.0.2k und dev Bibliothek sonst werden wir bildnem wieder mit 1.0.1t nicht unsere Absicht,

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

 

Jetzt links Bibliotheken für notwendig hinzufügen Zusammenstellung von nginx

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Wenn Sie korrekt arbeiten müssen Sie eine Struktur haben, wie

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

Melden Sie sich an Papta, wo Razarhiviran die Nginx-Quelle in meinem Fall ist, ist der Nginx-1.10.3 ausgeführten Befehl mit der Version inkrementirate, Ich persönlich bevorzuge hinzufügen 1 bauen diese

debchange --newversion 1.10.3-1

Sobald Sie eine hinzufügen Changelog-und gegebenenfalls auf die tatsächliche Kompilierung zu gehen

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

Ein wenig Aufklärung über Konfigurationsbefehl:

-uns -uc sagen Sie das Skript nicht “unterzeichnet” .dsc und .changes Dateien. -ich und -ich führen Sie das Skript zu ignorieren Dateien der Versionskontrolle. -B nur Binär-Paket zu erzeugen,. -j wie in, wie parallelen Prozess zu kompilieren zu machen 🙂

 

Nach dem obigen Verfahren unserer neuen Pakete zu installieren. Wenn Sie bereits installiert haben, ist nginx besser zu deinstallieren

apt remove nginx nginx-*

Auch keine schlechte Idee, ein Backup des Ordners in der Nginx/Etc zu machen. In der Regel beim upgrade 1.6.5 zu 1.10.3 Ich hatte keine Dramen, aber man weiß ja nie. Die neuen Paktei befinden sich im Ordner "" von der oberen Ebene und sollte mit einem Befehl wie installiert werden:

dpkg -i ../*.deb

Wenn alles glatt ging müssen Sie spielen Ihren Nginx-Prozess und http2, die nicht mehr den Zweck dieses Artikels ist zu konfigurieren.

Ich erlebte wenig Drama mit der CD auf meinem laptop. Nach der Fiksvaneto das Problem mit apt-Get update L″svaše die folgenden extrem nicht angenehm Ende des Prozesses

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.

Wie üblich ist das Problem völlig obvious/var/lib/apt/lists/debian.ipacct.com_debian_dists_sid_contrib_binary-i386 nicht korrekt gelesen werden kann. Feste Teile ist so einfach wie die Diagnose des Problems:

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

Am Ende ist das Ergebnis einer erzwungenen Synchronisierung von apt.

Mein Lieblingstexteditor Geany. Es ist sehr minimalistisch HIER dass unterstützt eine breite Palette von Sprachen – Schale, PHP, Python, C … etc.. Es gibt Auto-Vervollständigen, während Hölle agil. Es fehlt die gelegentliche angenehm wie möglich, aber im Moment ist für mich mehr als genug. Ich fing an Online-Kurs Python-Programmierung auf SoftUni – ihr Wissen aufzufrischen und zu aktualisieren, da ich bin nicht nach ausreichender was mit Python geschieht 3. Die Dozenten des Kurses empfohlen PyCharm als IDE für die Programmierung von pyton, aber für mich weit weg von meinem Geschmack, Verwenden Sie Geany natürlich für Übungen.

Während der Vorträge schmerzlich empfunden 2 Engpässe

  1. Python Auto-Vervollständigen-und ausgeatmeten von Dokumentation zu Funktionen und Methoden
  2. keine Validierung für PEP8 Standard

Die gute Nachricht ist, dass Geany flexibel genug ist, um von der Konfiguration und leicht durch solche ergänzt werden können fehlt. lassen hinzufügen Python-Dokumentation in unseren IDE:

  • ziehen Sie Ihre Das folgende Skript irgendwo in unserem PATH / usr / bin nicht zu vergessen machen es ausführbar
  • bearbeiten Sie die Datei ~ / .config / geany / filedefs / filetypes.python teil Einstellungen die folgende Zeile hinzufügen context_action_cmd = pydocw% s. Wenn es das Hinzufügen nur den Namen binarkata aus dem vorherigen Schritt. Starten Sie Geany wenn laufen.
  • Wir haben bereits eine kontext Aktion, die Informationen über die Funktion zu entfernen wird. Ich fügte hinzu, shortcut, so dass ich war komfortabel, als mir nicht klar, irgendwelche Funktionalität. Leach mir diesen Ansatz sehr, weil Ich mag mich ärgert netbeans Ansatz.

So weit so gut. Dann wollte ich wirklich einen Bestätigungscode zu haben, schreiben Sie – ob ich schreibe allgemein anerkannten Standards entsprechend oder jede Hässlichkeit schreiben. Im Allgemeinen fand ich wieder tutorialče wie die Dinge passieren, aber es ist ein bisschen veraltet – Geany hat alles in sich selbst gebaut es nur installieren müssen PEP8 Paket. In Debian apt-get install PEP8 allein in anderen distrota arbeitet, um herauszufinden, wie die Magie passiert. Im zweiten Build-Menü-Taste (zumindest für mich) - Lint, indem Sie darauf klicken, werden Sie sehen, wie ein hässlicher Code, den Sie erstellt haben 😀

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

Dies ist in groben Zügen, wie man Ihr Geany funktioniert gut mit Python und dabei weiter schnell sein, nicht die CPU macht Ihnen will, um seine Kugel zu ziehen.

für einige (nicht ganz klar meine Gründe) Ich scheiterte postgresql Daemon im distributiven Upgrade eines meiner Debian-Server zu aktualisieren. Postgresql Dämon hat ein nettes Feature, mit der neuen Version nicht gestartet (im Gegensatz zu Mysql) während nicht überzeugen, Der neue ist voll kompatibel mit dem Start – sehr nützlich für große Datenbanken. Das Verfahren zur beschränkt auf die folgenden UPDATING 2 Spuren:

  • pg_dropcluster
  • pg_upgradecluster

Vor izdropite pg Cluster-Daemon muss gestoppt werden!

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

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

Die neue Debian Stable eine Tatsache, über eine Woche und Händen juckte virtualkata, um es zu verbessern, aber ich hatte heute keine Zeit. Da der Tag, als ich früh begann, habe ich beschlossen, meine Zeit zu widmen, zu aktualisieren. Ich habe meine Quellliste geändert, indem ich die Wheezy von Jessie geändert habe

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

hier brüllten 2 Spiegel:

  • Mariadb – auf Spiegel müssen nicht mehr Jessie Version enthält 10.0.6 in selbst habe sitze ich nicht gut viele. dann 5.5 michetodb und MySQL sind nicht ganz konsistent, weil zu der Zeit sie um zurück zu mysql gedreht 5.5.42 – es ist der Standard jessie
  • Dotdeb – Ich habe es vor für php55 hier ist auch nicht erforderlich, da Jessie kommt mit 5.6.7-1

Nachdem die zusätzlichen Spiegel treten und drehte sich um von MariaDB zu Mysql apt-get dist-upgrade Mine sauber, Neustart und ich musste Debian 8.0. Ich öffnete meine Web-Server-und zu meiner Überraschung war hier eine lange Geschichte – ein paar Worte Nginx-und ich von der Quelle weiter mit zusätzlichen Richtlinien zusammengestellt. Dpkg-L Nginx-Full 1.2 Yep jemand vergessen zu Unhold-Pakete nicht. Unhold und Upgrade alles ist im Zeitplan und nginx-breaking 😆 . Nginx-und Arbeitsprozesse Abfragen und php-fpm Prozess ist und runnign aber PHP-Code nicht ausgeführt wird, und spucken keine Fehler meiner Favoriten 🙄.

Nach einer Suche von Informationen über die Änderungen fand ich die folgende Passage

Fastcgi Konfigurationsprobleme ============================

nginx verschifft eine modifizierte fastcgi_params, die erklärte SCRIPT_FILENAME fastcgi_param. Diese Linie wurde nun entfernt. Ab sofort versenden wir auch aus dem Upstream-Repository fastcgi.conf, welcher einen sane SCRIPT_FILENAME Parameterwert.

Damit, wenn Sie mit fastcgi_params, Sie können Schalt versuchen, fastcgi.conf oder manuell an die entsprechenden params.

Bingo. Ich habe die virtuelle Hosts unhöflich Einbrüche machen verwenden fastcgi.conf und alles beleuchtet. Dann traf eine schnelle diff, um zu sehen, was ist der Unterschied zwischen dem 2 Config

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

Welche erinnerte mich, dass Gießen großen Konfigurationen in virtuellen Hosts coole Idee sind. Es bleibt wieder Nginx-und-ons neu kompiliert werden, die mod_sec wollen + Page Speed, aber das kann warten. Weitaus wichtiger, Dass meine Regel wiederholt wird, wenn Sie keinen Blick von der 3. Quelle haben und das Geld aus Debian nicht bricht, wenn Dist-upgrade!

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