Einführung in das Batch-Cache-Löschskript von nginx proxy_cache

Einführung in das Batch-Cache-Löschskript von nginx proxy_cache

Vorwort: Ich habe zuvor den offiziellen Proxy-Cache von Nginx als statischen CDN-Cache verwendet und festgestellt, dass es ein großes Problem war, den Cache in diesem Modul zu leeren. Es kann URLs nur einzeln löschen. Aus diesem Grund habe ich ein Skript geschrieben, um den Cache stapelweise zu leeren.

Zu den Hauptmerkmalen gehören:

1. Nach Dateityp bereinigen

2. Bereinigen Sie nach bestimmten Dateinamen

3. Aufräumen nach Website-Verzeichnis

Nachfolgend sehen Sie den Skriptcode der Bash-Shell. Im Internet gibt es bereits viele ähnliche Skripte, die jedoch nicht sehr gut sind und leicht zu Fehlern führen können.

#!/bin/bash
#E-Mail: [email protected]
#Nginx Proxy_Cache-Shell-Skripte automatisch bereinigen
#Tante:Sonne~Muschel
#Datum:23.02.2017
echo -e "\n\n"
echo -n -e "\e[35;1mBitte geben Sie den spezifischen Pfad des Nginx Proxy_cache-Cache ein (Freundliche Erinnerung: Sie können die Tab-Vervollständigungsfunktion verwenden!)\e[0m\e[34;5m:\e[0m"
read -e Pfad
CACHE_DIR=$Pfad
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -n -e "\e[32;1mBitte geben Sie die Aktion ein, die Sie löschen möchten\n1. Löschen nach Dateityp\t2. Löschen nach bestimmtem Dateinamen\t3. Löschen nach Dateiverzeichnis\n:"
Aktion lesen
   Fall $Aktion in
1)
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -n -e "\e[34;1m Bitte geben Sie den Cache-Dateityp ein, den Sie löschen möchten (Sie können mehrere Parameter durch Leerzeichen getrennt eingeben)\e[0m\e[34;5m:\e[0m"
lesen -a DATEI
für i in `echo ${FILE[*]}|sed 's/ /\n/g'`
Tun
grep -r -a \.$i ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt
 für j in „cat /tmp/cache_list.txt“
Tun
  rm -rf $j
  echo "$i $j erfolgreich gelöscht!"
 Erledigt
Erledigt
;;
2)
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -n -e "\e[33;1m Bitte geben Sie den spezifischen Namen der Cache-Datei ein, die Sie löschen möchten (Sie können mehrere Parameter durch Leerzeichen getrennt eingeben)\e[0m\e[34;5m:\e[0m"
lesen -a DATEI
für i in `echo ${FILE[*]}|sed 's/ /\n/g'`
Tun
grep -r -a $i ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt
 für j in „cat /tmp/cache_list.txt“
Tun
  rm -rf $j
  echo "$i $j erfolgreich gelöscht!"
 Erledigt
Erledigt
;;
3)
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -e "\e[32;1m----------------------------------------------------------------\e[0m"
echo -n -e "\e[33;1mUnterstützte Modi sind:\n1. Löschen Sie alle Caches im Store-Verzeichnis der Website: test.dd.com/data/upload/shop/store\n2. Löschen Sie alle Caches im Shop-Verzeichnis der Website: test.dd.com/data/upload/shop\e[0m\n"
echo -n -e "\e[34;1m Bitte geben Sie das spezifische Verzeichnis der Cache-Datei ein, die Sie löschen möchten\e[0m\e[34;5m:\e[0m"
lesen -a DATEI
für i in `echo ${FILE[*]}|sed 's/ /\n/g'`
Tun
grep -r -a "$i" ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt
 für j in „cat /tmp/cache_list.txt“
Tun
  rm -rf $j
  echo "$i $j erfolgreich gelöscht!"
 Erledigt
Erledigt
;;
*)
echo "Eingabefehler, bitte erneut eingeben"
;;
esac

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • So verbergen Sie die Versionsnummer und die Cache-Zeit von Webseiten in Nginx
  • Detaillierte Erläuterung zum Einrichten des Ressourcencaches in Nginx
  • So richten Sie statische Dateien auf dem Nginx-Cache-Server ein
  • Umgang mit Nginx und Browser-Cache
  • Beispiel für eine Nginx-Cache-Konfiguration

<<:  So verwenden Sie VUE und Canvas, um ein Thunder Fighter-Tippspiel zu implementieren

>>:  Tutorial zur Verwendung von Prepare-, Execute- und Deallocate-Anweisungen in MySQL

Artikel empfehlen

Einige weniger bekannte Sortiermethoden in MySQL

Vorwort ORDER BY 字段名升序/降序. Ich glaube, jeder hier...

Tipps zur Verwendung kleiner HTML-Tags

Phrasenelemente wie <em></em> können d...

Codebeispiele für allgemeine Vorgänge bei der Docker-Image-Verwaltung

Spiegelung ist auch eine der Kernkomponenten von ...

Easyswoole Ein-Klick-Installationsskript und Pagoden-Installationsfehler

Häufig gestellte Fragen Wenn Sie easyswoole zum e...

Installationsprozess des mysql5.6.8-Quellcodes

Kernel: [root@opop ~]# cat /etc/centos-release Ce...

Die Verwendung der Vue-Direktive v-bind und zu beachtende Punkte

Inhaltsverzeichnis 1. v-bind: kann einige Daten a...

Implementierungsmethode für die Datenspeicherung im WeChat-Applet

Inhaltsverzeichnis Globale Variable „globalData“ ...

Überlegungen zur Partitionierung von MySQL-Datenbanktabellen [empfohlen]

Die Tabellenpartitionierung unterscheidet sich vo...

Installieren Sie Redis und MySQL auf CentOS

1|0MySQL (MariaDB) 1|11. Beschreibung Das Datenba...

Docker-Image-Optimierung (von 1,16 GB auf 22,4 MB)

Inhaltsverzeichnis Der erste Schritt der Optimier...

So erstellen Sie einen untergeordneten Prozess in nodejs

Inhaltsverzeichnis Einführung Untergeordneter Pro...

4 praktische Tipps für die Webseitengestaltung

Verwandte Artikel: 9 praktische Tipps zum Erstelle...

Detaillierte Erläuterung des Prozesses der Zabbix-Überwachung von SQLServer

Werfen wir einen Blick auf die Zabbix-Überwachung...