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

So implementieren Sie das MySQL-Umschalten des Datenspeicherverzeichnisses

So implementieren Sie das MySQL-Umschalten des Da...

Ein Beispiel für die Implementierung eines adaptiven Quadrats mit CSS

Die traditionelle Methode besteht darin, ein Quad...

DNS-Konfigurationsmethode für den Linux Domain Name Service

Was ist DNS Der vollständige Name von DNS lautet ...

Tipps zur MySQL-Leistungsoptimierung

MySQL-Leistungsoptimierung MySQL wird in Internet...

Einführung in die Leistungsoptimierung von MySQL-Datenbanken

Inhaltsverzeichnis Warum optimieren? ? Wo soll ic...

In WMP eingebettetes HTML, kompatibel mit Chrome und IE, detaillierte Einführung

Tatsächlich gibt es viele entsprechende Schreibme...