Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So realisieren Sie die automatische Synchronisierung von Webseiten unter Linux

So realisieren Sie die automatische Synchronisierung von Webseiten unter Linux

PHPz
PHPznach vorne
2023-05-15 16:58:21899Durchsuche

Verwenden Sie mehrere Webserver, um einen Lastausgleich zu erreichen. Um die Konsistenz der Ressourcen auf dem Front-End-Webserver aufrechtzuerhalten, können Sie aktualisierte Dateien über rsync auf dem Master-Server (Daten können) mit anderen Slave-Servern (schreibgeschützten Servern) synchronisieren geschrieben werden), aber die Echtzeitsynchronisierung kann nicht automatisch durchgeführt werden mit inotify

Master-Server: 192.168.6.205 inotify
Slave-Server: 192.168.6.36 rsync

1. Konfigurieren Sie rsync auf dem Slave Server und aktivieren Sie den Rsync-Dienst, damit der Master-Dienst Ressourcen mit diesem Server synchronisieren kann onmax Verbindungen = 4

timeout = ja

[wordpress]
Pfad = /usr/local/nginx/html/wordpress
Kommentar = rsync-Dateien
Fehler ignorieren
schreibgeschützt = nein
Liste = ja
auth-Benutzer = rsync
Secrets-Datei = /etc/rsync.passwd

Erstellen Sie die Passwortkonfigurationsdatei /etc/rsync.passwd
vim /etc/rsync.passwd
#user:password
rsync:rsync


2. Installieren Sie inotify-tools auf der Hauptseite server


tar -zxvf inotify-tools -3.14.tar.gz
cd inotify-tools-3.14
./configure –prefix=/usr/local/inotify

make && make install

Konfigurieren Sie die Rsync-Passwortdatei auf dem Master-Server zum Synchronisieren von Daten mit dem Slave-Server vim /etc/rsync.passwd

#password

rsync

Skript erstellen
vim inotifyrsync.sh

#!/bin/bash
host=192.168.6.36
src=/usr /local/nginx/html/wordpress/
dst=wordpress

user=rsync

inotifywait=/usr/local/inotify/bin/inotifywait
rsync=/usr/bin/rsync

$inotifywait -mrq –timefmt '%d/ %m/%y %h:% m' –format '%t %w%f' -e ändern, löschen, erstellen, attributieren $src | beim Lesen von Dateien

do
$rsync -vzrtopg –delete –progress –password-. file=/etc/rsync.passwd $ src $user@$host::$dst
        echo „${files} was rsynced“ >>/tmp/rsync.log 2>&1
  done

Das obige ist der detaillierte Inhalt vonSo realisieren Sie die automatische Synchronisierung von Webseiten unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen