sitecopy je nástroj pro kopírování lokálně uložených webových stránek na vzdálený webový server (pomocí FTP nebo WebDAV). Pomáhá vám udržovat vzdálený web synchronizovaný s vaší místní kopií nahráním upravených místních souborů a odstraněním vzdálených souborů, které byly odstraněny na místním počítači. Tento tutoriál ukazuje, jak můžete spravovat svůj vzdálený web z místní plochy Ubuntu 16.04 pomocí sitecopy.
1 předběžná poznámka
Používám uživatelské jméno do na své místní ploše Ubuntu (na místní ploše Linuxu jsem přihlášen jako tento uživatel – nepřihlašujte se prosím jako uživatel root). Soubory pro vzdálený web example.com jsou uloženy v adresáři /home/till/sites/example.com/ na místním počítači. Kořen vzdáleného dokumentu je /var/www/example.com/web/.
Sitecopy můžete používat s FTP a WebDAV, takže byste měli mít na vzdáleném serveru účet FTP nebo WebDAV. Používám výchozí uživatelské jméno FTP a heslo, jak lze vytvořit zde.
Vzdálený web, který používám pro tyto příklady, byl vytvořen pomocí ISPConfig. Ale bude fungovat každý web, ke kterému máte přístup FTP nebo WebDAV.
2 Instalace sitecopy
Sitecopy lze nainstalovat na místní plochu následovně (potřebujeme práva root, proto používáme sudo):
sudo apt-get -y install sitecopy
Nyní byste se měli podívat na manuálovou stránku sitecopy, abyste se seznámili s jejími možnostmi:
man sitecopy
3 Konfigurace sitecopy
Přejděte do svého domovského adresáře na místní ploše...
cd ~
... a vytvořte adresář .sitecopy s oprávněními 700 (sitecopy používá tento adresář k ukládání podrobností o souboru):
mkdir -m 700 .sitecopy
Dále vytvořte konfigurační soubor sitecopy .sitecopyrc:
dotkněte se .sitecopyrc
chmod 600 .sitecopyrc
Otevřete soubor...
nano .sitecopyrc
... a vyplňte konfiguraci pro web example.com. Zde jsou dva příklady, jeden pro FTP...
site example.com server example.com uživatelské jméno defaultdo heslo howtoforge local /home/till/sites/example.com/ remote ~/web/ vyloučit *.bak vyloučit *~
... a jeden pro WebDAV:
site example.com server example.com protokol webdav uživatelské jméno defaulttill heslo howtoforge local /home/till/sites/example.com/ remote /var/www/example.com/web/ vyloučit *.bak vyloučit *~(Pro každý web, který chcete spravovat pomocí sitecopy, můžete definovat stanzu.)
Za direktivou webu musí následovat název webu - můžete si ho libovolně zvolit, např. example.com nebo mysite. Tento název bude později použit v příkazech sitecopy. Následující možnosti konfigurace, které patří k tomuto webu, musí být odsazeny!
Většina z následujících možností konfigurace je samovysvětlující. Výchozí protokol je FTP; pokud chcete používat WebDAV, zadejte protokol webdav. Lokální direktiva obsahuje místní cestu kopie webové stránky, vzdálená obsahuje cestu webové stránky na vzdáleném serveru – může být absolutní nebo relativní. Pokud je váš uživatel chrootovaný (jak je tomu u uživatelů FTP normálně), měli byste použít relativní cestu (jako ~/ nebo ~/web). Jinak použijte absolutní cestu.
Řádky vyloučení jsou volitelné, jsou zde jen proto, aby demonstrovaly, jak můžete vyloučit soubory z údržby pomocí sitecopy.
Více o konfiguraci sitecopy se můžete dozvědět na jeho manuálové stránce:
man sitecopy
4. První použití
Před prvním použitím sitecopy se musíte rozhodnout, který z následujících tří scénářů odpovídá vaší situaci:
- Existující vzdálený web a místní kopie, obě synchronizované.
- Stávající vzdálený web, žádná místní kopie.
- Nový vzdálený web, existující místní kopie.
4.1 Stávající vzdálený web a místní kopie, obě synchronizované
Pokud vzdálený web i místní kopie existují a jsou synchronizované, spusťte
sitecopy --catchup example.comaby si sitecopy myslelo, že místní web je přesně stejný jako vzdálená kopie. Nahraďte example.com názvem webu, který používáte v souboru .sitecopyrc.
[chráněno e-mailem]:~$ sitecopy --catchup example.com
sitecopy:Dohánění webu `example.com' (na example.com v ~/web/)
sitecopy:Všechny soubory a adresáře jsou označeny jako aktualizované vzdáleně.
4.2 Stávající vzdálený web, žádná místní kopie
Pokud nemáte místní kopii stávajícího vzdáleného webu, spusťte
sitecopy --fetch example.comnejprve, aby sitecopy načetl seznam souborů ze vzdáleného serveru (nahraďte example.com názvem webu, který používáte v souboru .sitecopyrc):
[e-mail chráněno]:~$ sitecopy --fetch example.com
sitecopy:Načítání webu „example.com“ (na example.com v ~/web/)
Soubor:error/503 .html – velikost 1906
Soubor:error/502.html – velikost 1881
Soubor:error/500.html – velikost 1851
Soubor:error/405.html – velikost 1810
Soubor:error/404.html – velikost 1806
Soubor:error/403.html – velikost 1809
Soubor:error/401.html – velikost 1806
Soubor:error/400.html - velikost 1792
Soubor:stats/.htaccess - velikost 128
Soubor:robots.txt - velikost 14
Soubor:index.html - velikost 1861
Soubor:favicon.ico - velikost 7358
Soubor:.htaccess - velikost 26
Adresář:chyba/
Adresář:stats/
sitecopy:Načítání bylo úspěšně dokončeno.Potom spusťte
sitecopy --synch example.comaktualizovat místní web ze vzdálené kopie.
sitecopy:Synchronizace webu `example.com' (na example.com v ~/web/)
Chyba vytváření/:hotovo.
Vytváření statistik/:hotovo.
Chyba stahování/ 503.html:[.] hotovo.
Chyba při stahování/502.html:[.] hotovo.
Chyba při stahování/500.html:[.] hotovo.
Chyba při stahování/405. html:[.] hotovo.
Chyba při stahování/404.html:[.] hotovo.
Chyba při stahování/403.html:[.] hotovo.
Chyba při stahování/401.html:[.] hotovo.
Chyba při stahování/400.html:[.] hotovo.
Stahování statistik/.htaccess:[.] hotovo.
Stahování robots.txt:[.] hotovo.
Stahování index.html:[.] hotovo.
Stahování favicon.ico:[.] hotovo.
Stahování .htaccess:[.] hotovo.
sitecopy:Synchronizace úspěšně dokončena .
4.3 Nový vzdálený web, existující místní kopie
Pokud místní kopie existuje, ale máte prázdný vzdálený web, spusťte
sitecopy --init example.comnejprve inicializovat web. Nahraďte example.com názvem webu, který používáte v souboru .sitecopyrc.
[e-mail chráněno]:~$ sitecopy --init example.com
sitecopy:Inicializace webu `example.com' (na example.com v ~/web/)
sitecopy:Všechny soubory a adresáře jsou označeny jako NEaktualizované vzdáleně.Poté spusťte:
sitecopy --update example.compro nahrání místní kopie na vzdálený web:
[e-mail chráněno]:~$ sitecopy --update example.com
sitecopy:Aktualizace webu `example.com' (na example.com v ~/web/)
Vytváření statistik/:hotovo .
Vytváření dat/:hotovo.
Chyba vytváření/:hotovo.
Nahrávání statistik/.htaccess:[.] hotovo.
Nahrávání dat/index.html:[.] hotovo.
Chyba při nahrávání/403.html:[.] hotovo.
Chyba při nahrávání/401.html:[.] hotovo.
Chyba při nahrávání/404.html:[.] hotovo.
Chyba při nahrávání/503.html:[.] hotovo.
Chyba při nahrávání/400.html:[.] hotovo.
Chyba při nahrávání/502.html:[.] hotovo.
Chyba při nahrávání/405.html:[.] hotovo.
Chyba při nahrávání/500.html:[.] hotovo.
Nahrávání index.html:[.] hotovo.
Nahrávání robotů .txt:[.] hotovo.
Nahrávání .htaccess:[.] hotovo.
Nahrávání favicon.ico:[.] hotovo.
sitecopy:Aktualizace úspěšně dokončena.
5 Použití sitecopy
Poté je použití sitecopy opravdu snadné. Můžete pracovat s místním kopírováním a aktualizovat, vytvářet a odstraňovat soubory. Prvním, ale volitelným krokem je spuštění
sitecopy example.comzjistit, které soubory se lokálně změnily (nahraďte example.com názvem webu, který používáte v souboru .sitecopyrc):
[chráněno e-mailem]:~$ sitecopy example.com
sitecopy:Zobrazují se změny na webu `example.com' (na example.com v ~/web/)
* Tyto položky byly přidány od poslední aktualizace:
info.php
sitecopy:Vzdálený web potřebuje aktualizaci (1 položka k aktualizaci).Chcete-li synchronizovat vzdálenou webovou stránku s místní kopií (tj. nahrát nové a změněné soubory na vzdálený server a odstranit soubory na vzdáleném serveru, které byly lokálně smazány), jednoduše spustíte
sitecopy --update example.com[e-mail chráněný]:~$ sitecopy --update example.com
sitecopy:Aktualizace webu `example.com' (na example.com v ~/web/)
Nahrávání info.php:[] hotovo.
sitecopy:Aktualizace úspěšně dokončena.A je to! Bavte se s sitecopy!
6 odkazů
- sitecopy:http://www.manyfish.co.uk/sitecopy/
- Ubuntu:http://www.ubuntu.com/