Verwenden Sie nginx, um Bildgrößen dynamisch zu konvertieren und Miniaturansichten zu generieren

Verwenden Sie nginx, um Bildgrößen dynamisch zu konvertieren und Miniaturansichten zu generieren

Mit dem Nginx-Modul ngx_http_image_filter_module (Nginx-Version 0.7.54+) können Bildgrößen dynamisch in die Formate JPEG, GIF, PNG und WebP konvertiert werden.

Dieses Modul wird nicht standardmäßig erstellt und muss über den Konfigurationsparameter --with-http_image_filter_module aktiviert werden.

Wenn der Bildverkehr nicht groß ist, können Sie dieses Modul verwenden.

Dieses Modul verwendet die libgd-Bibliothek. Es wird empfohlen, die neueste Version der Bibliothek zu verwenden.

Im Folgenden finden Sie die Schritte zum Hinzufügen dieses Moduls, wenn nginx bereits installiert ist.

1 Installationsabhängigkeiten

yum -y installiere gd-devel
yum -y installiere libxslt-devel
yum -y installiere Perl-Devel Perl-ExtUtils-Embed

2 Zeigen Sie die ursprünglichen Nginx-Parameter an

​ nginx -V

Die Ausgabe lautet wie folgt:

​ nginx-Version: nginx/1.12.2
Argumente konfigurieren:

Überprüfen Sie, ob --with-http_image_filter_module vorhanden ist. Wenn ja, bedeutet dies, dass es installiert wurde. Andernfalls fahren Sie mit der Installation fort.

3 Zusammenstellung

Beim Neukompilieren müssen Sie dieselbe Version des Nginx-Quellcodes wie die Originalversion herunterladen und dekomprimieren.

Fügen Sie --with-http_image_filter_module=dynamic und die ursprünglichen Parameter hinzu (zur Neuinstallation ist es nicht erforderlich, den Befehl „make install“ auszuführen).

./configure --with-http_image_filter_module=dynamisch
machen

4 Sichern Sie den ursprünglichen nginx

cp -r /usr/local/nginx /usr/local/nginxbak

5 Nginx abdecken

cp objs/nginx /usr/local/nginx/sbin/
mkdir /usr/local/nginx/module
cp objs/ngx_http_image_filter_module.so /usr/local/nginx/module/ngx_http_image_filter_module.so

6 Ändern Sie die Konfigurationsdatei

vim /usr/local/nginx/conf/nginx.conf

Lademodul /usr/local/nginx/module/ngx_http_image_filter_module.so;
Standort ~* /images/(.+)_(\d+)x(\d+)\.(jpg|jpeg|gif|png)$ {
        setze $w $2;
        setze $h $3;
        Bildfiltergröße ändern $w $h;
        image_filter_buffer 30M; #Legen Sie die maximale Größe des Bildpuffers fest. Wenn die Größe den eingestellten Wert überschreitet, gibt der Server den Fehler 415 zurück
        image_filter_interlace ein;
        Bildfilter_JPEG_Qualität 80;
        versuche_dateien /$1.$4 /nichtgefunden.jpg;
        läuft in 1 Tag ab;
        add_header 'Zugriffskontrolle-Origin zulassen' '*';
        add_header 'Zugriffskontrolle-Anmeldeinformationen zulassen' 'true';
        alias /home/publisherupload/ ; #root ermöglicht den Zugriff auf /User/XX/Desktop/images beim Zugriff auf den Pfad /images/. Wenn root durch alias ersetzt wird, wird auf /User/XX/Desktop/ zugegriffen; /User/XX/Desktop/ ist der absolute Pfad auf dem lokalen Computer.
    }

Standort /Bilder {
  alias /home/publisherupload/ ; #root ermöglicht den Zugriff auf /User/XX/Desktop/images beim Zugriff auf den Pfad /images/. Wenn root durch alias ersetzt wird, wird auf /User/XX/Desktop/ zugegriffen; /User/XX/Desktop/ ist der absolute Pfad auf dem lokalen Computer.
  Autoindex aktiviert; #Funktion zum Durchsuchen von Verzeichnissen öffnen}

7 Nginx-Konfiguration neu laden

/usr/local/nginx/sbin/nginx -s

8 Prüfung

Die endgültige Bildzugriffsadresse besteht darin, den Parameter _width x height nach der ursprünglichen Bildadresse hinzuzufügen

http://110.87.103.58:12345/images/2021-01/202101250944272_500x400.png

siehe

https://cloud.tencent.com/developer/article/1644466

Dies ist das Ende dieses Artikels über die Verwendung von nginx zur dynamischen Konvertierung von Bildgrößen zur Generierung von Miniaturansichten. Weitere Informationen zur dynamischen Konvertierung von Bildgrößen durch nginx finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung zur Verwendung von Nginx + Consul + Upsync zum Erreichen eines dynamischen Lastausgleichs
  • So fügen Sie Nginx dynamisch Module hinzu
  • Beispiel für eine dynamische Sperre der IP-Blacklist von Nginx
  • Konfigurationsskript für den automatischen Ausgleich von Nginx-Cache-Dateien und dynamischen Dateien
  • Detaillierte Erläuterung mehrerer Möglichkeiten zum Schreiben eines dynamischen DNS-Reverse-Proxys für Nginx
  • Nginx fügt dynamisch Module zu installiertem Nginx hinzu
  • So fügen Sie Nginx dynamisch eine Zugriffs-Whitelist hinzu
  • PHP plus Nginx zur Realisierung einer dynamischen Lösung zum Zuschneiden von Bildern

<<:  Bevor wir eine Webseite erstellen, werfen wir einen Blick auf diese sogenannten Spezifikationen

>>:  Mysql SQL-Anweisungsvorgang zum Hinzufügen oder Ändern des Primärschlüssels

Artikel empfehlen

Detaillierte Erklärung des JSON-Dateischreibformats

Inhaltsverzeichnis Was ist JSON Warum diese Techn...

Installieren Sie MySQL 5.7.17 im Win10-System

Das Betriebssystem Win10 MySQL ist die 64-Bit-ZIP...

IE6 implementiert min-width

Zunächst einmal wissen wir, dass dieser Effekt ei...

js, um Sternblitzeffekte zu erzielen

In diesem Artikelbeispiel wird der spezifische Co...

Fallstudie zu JavaScript-Ereignisschleifen

Ereignisschleife in js Da JavaScript ein Single-T...

So lösen Sie das jQuery-Konfliktproblem

In der Frontend-Entwicklung ist $ eine Funktion i...

CSS-Syntax für Tabellenränder

<br /> CSS-Syntax für Tabellenränder Zu den ...

Detaillierte Erläuterung der Dateisystemformate der EXT-Serie in Linux

Linux-Dateisystem In der Abbildung oben sind herk...

Üben Sie die Verwendung von Golang, um mit der Docker-API zu spielen

Inhaltsverzeichnis Installieren des SDK Lokalen D...

Canonical ermöglicht Linux-Desktop-Apps mit Flutter (empfohlen)

Das Ziel von Google mit Flutter bestand immer dar...

Grundlegendes Tutorial zur Bedienung von Dateien und Berechtigungen in CentOS

Vorwort Bevor wir beginnen, sollten wir uns kurz ...

MySQL Installer 8.0.21 Installations-Tutorial mit Bildern und Text

1. Grund Ich musste MySQL nur auf einem neuen Sys...

MySQL 5.7.17 neuestes Installationstutorial mit Bildern und Text

mysql-5.7.17-winx64 ist die neueste Version von M...