site.sh fa tutto quello che riguarda i siti. Gira sul server come root, senza ./ davanti (sta in /usr/local/sbin). Senza argomenti stampa l’aiuto. Ogni pulsante della dashboard chiama uno di questi comandi.
Ciclo di vita
Comando Cosa fa
site.sh create <dominio> [--selfsigned]Crea il sito: utente Linux, PHP-FPM, database, nginx con password di anteprima. Con --selfsigned un certificato provvisorio, per provarlo con il file hosts.
site.sh install-wp <dominio> --title … --admin-user … --admin-email … [--locale it_IT] [--create]WordPress nuovo, poi finalize. Con --create crea anche il sito e, se il DNS punta qui, chiede il certificato.
site.sh restore <dominio> [--site <voce>] [--create] [--force]Ripristina dal backup bonificato del vecchio server (Storage Box).
site.sh import <dominio> <id> [--php <versione>] [--senza-premium] [--force]Sito nuovo da un backup di produzione caricato e analizzato dalla dashboard: stesse versioni di WordPress e dei plugin, password nuove degli amministratori, esclusi in quarantena. Vedi Importare un sito di produzione .
site.sh inspect <dominio>Controlli dopo il ripristino: indirizzi, amministratori, tracce del malware.
site.sh finalize <dominio>Rinforza wp-config (niente modifica dei file da WordPress, SSL per l’accesso…) e blocca il codice.
site.sh cert <dominio>Certificato Let’s Encrypt. Prima controlla che il DNS (A e AAAA) punti solo a web1.
site.sh rename <vecchio> <nuovo>Cambio di dominio: file, database, utente, vhost, indirizzi dentro WordPress.
site.sh list [--json]Elenco dei siti.
Codice
Comando Cosa fa
site.sh lock <dominio>Codice in sola lettura (restano scrivibili solo upload, cache e poco altro) e impronta approvata.
site.sh unlock <dominio>Codice scrivibile, per lavorarci. Dopo 24 ore la dashboard lo ricorda.
site.sh php <dominio> [chiave=valore …] [--reset] [--live]Le impostazioni PHP del sito (memoria, tempo, dimensione dei caricamenti…).
site.sh wp <dominio> <comando wp-cli>wp-cli come utente del sito, senza caricare plugin e temi.
site.sh versions-init <dominio>Una volta per sito: la storia git iniziale dalle copie restic, poi lo stato approvato.
Aggiornamenti, plugin e temi
Comando Cosa fa
site.sh php-version <dominio> [<versione>]La versione di PHP del sito; con una versione la cambia tra quelle installate. Se poi il sito dà errore, torna quella di prima.
site.sh php-versionsVersioni di PHP installate: servizio, siti, fine del supporto.
site.sh php-install <versione> / php-remove <versione>Installa un’altra versione ancora mantenuta; toglie una versione che nessun sito usa.
site.sh update <dominio> / update-allCore (versioni minori), plugin, temi e lingue, con i checksum del core. Il riepilogo dice anche cosa non si è aggiornato.
site.sh plugins <dominio> / themes <dominio>Plugin o temi installati, con l’aggiornamento disponibile su wordpress.org.
site.sh update-plugin <dominio> <slug>Un plugin all’ultima versione, con i checksum.
site.sh install-plugin <dominio> <slug> [--activate]Plugin di wordpress.org; mai se l’ultima versione ha vulnerabilità note senza correzione; si attiva solo con i checksum giusti.
site.sh install-theme <dominio> <slug> / activate-themeTema di wordpress.org (con il tema padre se serve), poi l’attivazione.
site.sh deactivate-plugin <dominio> <slug> / activate-pluginDisattiva o riattiva un plugin: solo il database; uno di wordpress.org si riattiva solo con i checksum giusti.
site.sh delete-plugin <dominio> <slug>Plugin disattivato: copia del sito, disinstallazione, file in /root/rimossi.
site.sh delete-theme <dominio> <slug>Tema disattivato (né attivo né padre di quello attivo): file in /root/rimossi.
site.sh add-plugin <dominio> <file.zip> / add-themePlugin o tema a pagamento dallo zip. Un plugin già presente viene sostituito e resta com’era.
Accessi e amministrazione
Comando Cosa fa
site.sh dev-add <dominio> <nome> <chiave.pub>Sviluppatore: SFTP con la sua chiave e password di anteprima.
site.sh dev-remove <dominio> <nome> / dev-listRevoca (chiude anche le sessioni SFTP) ed elenco.
site.sh add-auth <dominio> <utente>Solo una credenziale di anteprima (o una password nuova).
site.sh admin-password <dominio> <login>Password nuova per un amministratore di WordPress.
site.sh admin-access <dominio> [close | open <ore> | always]Amministrazione di WordPress chiusa, aperta per 1–24 ore, sempre aperta.
site.sh preview-access <dominio> [close | open <ore> | always]Anteprima riservata (pagina d’accesso), aperta a tutti per 1–72 ore, sempre aperta. Vedi L’anteprima dei siti .
site.sh preview-ip <dominio> add | remove <indirizzo o rete>Indirizzi fidati del sito: entrano senza password.
site.sh editor-sync [<dominio>]L’editor dei file di wp-admin legato al blocco del codice, nei siti che non l’hanno ancora.
site.sh tunnel-add <utente> <chiave.pub> / tunnel-remove <utente> / tunnel-listLa chiave del tunnel della dashboard di un utente del pannello, come dalla pagina Utenti; toglierla chiude i suoi tunnel.
site.sh rest-users <dominio> on|offElenco degli utenti anche per chi non è collegato (se un’app lo usa).
Ripristino da una copia di web1
site.sh restore-backup <dominio> <copia> [--db | --files] [--to <dominio> [--create]]
Tutto, solo il database o solo i file, anche su un altro dominio. Prima salva una copia dello stato attuale della destinazione.
Rimedi
Ciò che tolgono dal sito va in quarantena; alla fine rifanno il controllo del sito. Vedi Rimedi .
Comando Cosa fa
site.sh quarantine <dominio> <percorso> [--motivo <testo>]Un file o una cartella fuori dal sito, in quarantena (mai wp-config.php).
site.sh quarantine-list <dominio> / unquarantine <dominio> <voce>Le voci in quarantena; una voce rimessa dov’era.
site.sh reinstall-core <dominio>WordPress di nuovo, stessa versione e lingua, con i checksum.
site.sh reinstall-plugin <dominio> <slug>Un plugin di wordpress.org di nuovo, stessa versione, con i checksum.
site.sh restore-file <dominio> <percorso> <copia>Un file o una cartella da una copia.
site.sh restore-version <dominio> <versione> <percorso>Un file o una cartella com’era in una versione; dentro una cartella i contenuti restano.
site.sh rebuild-code <dominio> <copia>Tutto il codice di nuovo: core e plugin da wordpress.org, il resto dalla copia; upload e database restano.
site.sh rollback-code <dominio> <versione>Tutto il codice com’era in una versione; contenuti, database e wp-config.php restano.
site.sh rotate-secrets <dominio>Chiavi e salt, password del database e di anteprima generica, sessioni e application password.
Dove finiscono le cose
Percorso Cosa contiene
/var/www/<dominio>/publicIl sito (la radice del web).
/var/www/<dominio>/logsLog di nginx e PHP del sito.
/root/sites/<dominio>/Password del database e di anteprima, stato del blocco, impostazioni del sito. Solo root.
/root/quarantena/<dominio>/Ciò che i rimedi hanno tolto dal sito, con la scheda di ogni voce. Solo root.
/root/rimossi/<dominio>/Plugin e temi eliminati dalla dashboard. Solo root.
/var/log/site-updates.logTutti gli aggiornamenti.
/var/log/site-integrity/I report dei controlli.
← Precedente
Quale comando mi serve?
Successivo →
Controlli, backup e Storage Box da shell