Salta al contenuto

Blog ·

Migrare da cPanel a DirectAdmin

La via più battuta per uscire da cPanel e ciò che non si porta dietro: regole sui nomi, quote, l’identificatore salvato dalla fatturazione e cinque trappole.

Di Provibr

È la via più battuta per uscire da cPanel, e la si imbocca per un motivo: la licenza smette di crescere con il numero di clienti. cPanel Premier fattura 0,49 $ per account al mese oltre i 100 account al 1° gennaio 2026; DirectAdmin Standard costa 29 $ al mese per un numero illimitato di account, rilevato su directadmin.com il 21 agosto 2026. Con mille account su un server, sono 510,99 $ contro 29 $.

Il risparmio è facile da calcolare. Ciò che segue è la parte che non lo è: cosa deve davvero accadere, cosa non sopravvive allo spostamento e i punti precisi in cui un primo script di migrazione fa in silenzio la cosa sbagliata.

Provibr supporta entrambi i pannelli, e un cliente sull’uno o sull’altro ci paga lo stesso. Non abbiamo alcun motivo per spingerLa verso questo spostamento, solo per renderlo accurato se lo effettua.

In cosa consiste davvero una migrazione

Quattro cose, e solo la prima dispone di un buon strumentario.

  1. I dati. File, database, posta, zone DNS. È la parte per cui i fornitori scrivono strumenti di conversione.
  2. Le identità. Nomi utente, domini, nomi di pacchetto. Devono esistere sulla destinazione e non sempre sopravvivono invariati.
  3. L’automazione. Tutto ciò che crea, sospende e fattura i Suoi account punta a cPanel e deve puntare altrove, di solito mentre entrambi i pannelli sono attivi.
  4. L’ondata di assistenza. Tutto ciò che si comportava in un modo e ora si comporta in un altro, che arriva sotto forma di ticket nelle due settimane successive.

Non abbiamo condotto la Sua migrazione di dati e non descriveremo gli strumenti di conversione di chicchessia come se li avessimo testati. I punti due, tre e quattro sono nostri, perché abbiamo misurato entrambi i pannelli costruendo integrazioni contro di essi.

La regola sui nomi utente rinominerà alcuni dei Suoi clienti

Entrambi i pannelli impongono una forma per il nome utente, e non è la stessa. La colonna cPanel è stata misurata creando account su WHM 11.136 fino al rifiuto; la colonna DirectAdmin è la regola imposta dalla sua stessa API.

cPanel / WHMDirectAdmin
Schema^[a-z][a-z0-9]{0,15}$^[a-z][a-z0-9]{2,15}$
Lunghezzada 1 a 16da 3 a 16
Deve iniziare conuna letterauna lettera
Trattinorifiutatorifiutato
Trattino bassorifiutatorifiutato
Maiuscolemesse in minuscolo in silenzioconservate o rifiutate, mai riscritte
Nomi riservatisì, con il proprio errore (root e altri)non misurato

Quella che frega tutti è il minimo. Un account cPanel può essere lungo uno o due caratteri; un account DirectAdmin no. Se ne ha qualcuno (e gli hosting provider di lunga data ne hanno di solito una manciata risalente agli inizi), ha bisogno di un nuovo nome, il che significa avvisare il cliente e aggiornare ogni riferimento al vecchio nome.

E c’è una trappola in uscita. WHM accetta un nome utente con le maiuscole, lo crea in minuscolo e annuncia un successo senza menzionare il cambiamento. Perciò l’account che crede si chiami MyClient sul server si chiama myclient fin dal giorno in cui è stato creato. Qualsiasi inventario che costruisce per la migrazione deve essere letto dal server anziché dai propri archivi, altrimenti una parte di esso non corrisponderà a nulla.

Ciò che la Sua fatturazione conserva sta per non puntare più a nulla

È la parte che si sottovaluta, perché è invisibile fino alla commutazione.

La Sua fatturazione, i Suoi script di provisioning, il Suo monitoraggio e i Suoi strumenti di assistenza identificano tutti un account di hosting tramite qualcosa. Su cPanel quel qualcosa è il nome utente. Dopo lo spostamento è ancora un nome utente. Ma se uno di essi è stato rinominato, il riferimento è morto, e un riferimento morto in un ciclo di sollecito non solleva alcun errore. Non sospende nulla.

Prima di spostare un solo account, produca una lista con tre colonne: il nome utente cPanel, il nome utente DirectAdmin che avrà e l’identificatore che detiene la Sua fatturazione. Se questi tre non concordano su ogni riga, la migrazione non è pronta, indipendentemente da come sia andato il trasferimento dei dati.

Cinque cose misurate sulle due API che romperanno un primo script

Tutto ciò è nato scrivendo integrazioni contro server in funzione, e tutte e cinque producono risultati errati anziché errori.

Entrambi i pannelli segnalano il fallimento con un HTTP 200. cPanel restituisce result: 0 all’interno di un oggetto metadata; DirectAdmin restituisce error=1 nel corpo. Uno script che controlla il codice di stato vede un successo per ogni fallimento, da entrambi i lati dello spostamento. cPanel ha anche una terza forma: un token errato o assente torna come HTTP 403 con un oggetto cpanelresult e nessun metadata affatto, così un parser che conosce solo metadata non riesce a distinguere un token errato da un server guasto.

Il limite di disco "0" di cPanel significa illimitato, non zero. Lo stesso vale per le stringhe "unlimited" e, per il consumo, "none". Uno script di migrazione che legge la quota di origine come un numero e la scrive sulla destinazione creerà account senza alcuno spazio disco per ogni cliente illimitato che ha, e lo farà senza il minimo avviso.

L’email di contatto di cPanel può essere la stringa letterale "*unknown*". Lo stesso per un paio dei campi di frequenza della posta. La copi senza verificare e ha creato account il cui indirizzo di contatto è un segnaposto, cosa che scopre quando il primo avviso di sospensione non arriva da nessuna parte.

La ricerca di account di cPanel è una corrispondenza per sottostringa, non esatta. Chiedere provibrtest1 ha restituito sia provibrtest1 sia provibrtest12345. Se la Sua migrazione verifica ogni account dopo averlo spostato cercandone il nome nel pannello di origine, può confermare l’account sbagliato e marcare come migrato un cliente che non lo è. Filtri Lei stesso esattamente sul nome utente.

Un server cPanel senza account non restituisce una lista vuota. Omette del tutto la chiave dei dati. Uno script che tratta una chiave assente come un fallimento segnalerà come errore il Suo ultimo server svuotato con successo; uno script che la tratta come «nessuna risposta ricevuta» è peggio, perché su un server attivo è la differenza tra «questo account è sparito» e «non abbiamo potuto dirlo».

Dal lato DirectAdmin ci sono altri due punti che vale la pena conoscere. Il suo elenco d’uso accusa un ritardo di circa tre secondi sulle creazioni e le eliminazioni, così un passo di verifica che si esegue subito dopo una creazione non vede nulla e conclude che l’account non è stato creato. Usi invece la lista di account che fa fede. E il testo di conferma della riattivazione di un account riporta letteralmente «have been suspended», il che conta proprio durante una commutazione, quando sospendere su un pannello e riattivare sull’altro sono le due metà di ogni spostamento.

Ciò che non si porta dietro

Oltre ai dati stessi:

Cosa succede
PacchettiNon portabili. Li ricrea a mano su DirectAdmin, e i limiti al loro interno spetta a Lei mantenerli allineati.
Domini addon e parcheggiaticPanel segnala domini principali, addon, sotto-domini e parcheggiati per account. DirectAdmin crea un account con un dominio; il resto si aggiunge in seguito dentro il pannello. Qualsiasi automazione deve sapere quale sia quello principale.
Contatori di bandaTotali mensili che il server azzera da sé. Non si spostano, e il primo mese dopo una migrazione risulta basso sul nuovo pannello e alto sul vecchio.
Motivi di sospensioneIl testo viene restituito in eco su cPanel e memorizzato per account. Preveda di ri-registrare perché ciò che è attualmente sospeso lo sia.
Tutto ciò che chiamava l’API di cPanelScript rivolti ai clienti, hook, plugin di terze parti. Per impostazione predefinita non hanno equivalenti DirectAdmin.
Quote di disco mai applicateVedi sotto. Questa è un’ondata di assistenza, non un problema di dati.

La trappola delle quote, e perché arriva nella prima settimana

Un server cPanel applica le quote di disco solo quando il filesystem su cui vivono gli account supporta le quote. Senza di ciò, WHM accetta il pacchetto, accetta il numero e non applica nulla. L’abbiamo misurato esattamente su un server WHM 11.136 in funzione: un account spostato su un pacchetto con una quota di 2 GB ha continuato a segnalare il proprio limite come unlimited, e le cifre di disco per account tornavano vuote. Nulla è fallito e nulla è stato rifiutato.

Se questo è lo stato del Suo parco, ogni account di fatto ha avuto disco illimitato per tutto il tempo in cui ciò è stato vero, e alcuni saranno cresciuti ben oltre ciò che ha loro venduto. Passi a un pannello che davvero applica la quota configurata, e colpiranno tutti il muro nella stessa settimana.

Lo verifichi prima di pianificare la migrazione, non durante. Se le quote non vengono applicate, ha una decisione da prendere sugli account in eccesso (alzarli, contattarli o rivederne il prezzo), ed è una decisione molto migliore da prendere in anticipo che in una coda di ticket.

Il test di connessione di Provibr indica se le quote vengano davvero applicate su un server cPanel, accanto alla versione e ai conteggi degli account, il che è un modo economico per scoprirlo. È anche il motivo per cui la piattaforma legge il limite di disco di un account dall’account anziché dal pacchetto: ciò che l’account segnala è ciò che è in vigore.

Lo faccia a coorti, e metta in conto dei mesi

Lo schema che funziona è noioso, ed è l’unico che funziona.

Diriga prima i nuovi ordini verso DirectAdmin. Nulla deve spostarsi per questo, il pannello di destinazione viene messo alla prova in condizioni reali, e ne impara il comportamento su account da cui nessuno dipende da anni.

Poi sposti gli account con il peggior rapporto tra licenza e fatturato. I Suoi piani più economici, i cui clienti si curano meno dell’interfaccia.

Poi tutto il resto, in lotti che è in grado di gestire. Una dimensione di lotto in cui un brutto pomeriggio resta recuperabile, il che, per la maggior parte degli hosting provider, è più piccola di quanto prevedano all’inizio.

Mantenga il vecchio pannello finché l’ultimo account non l’abbia lasciato e non sia trascorso un ciclo di fatturazione completo. Il mese successivo a una migrazione è quello in cui il contatore si azzera, le fatture partono e le discrepanze emergono.

I mesi intermedi

Per tutto quel periodo gestisce due pannelli. Due login, due modi di contare ciò che si è venduto, due posti in cui guardare quando un cliente chiama, e due automazioni che devono concordare su chi è sospeso. Questo periodo è il vero costo dello spostamento, ed è il motivo per cui molti hosting provider decidono di migrare e poi non cominciano mai.

Provibr collega entrambi i pannelli allo stesso account. Un account cPanel e un account DirectAdmin figurano nella stessa lista di server, contano sulla stessa capacità e arrivano sulla stessa fattura mensile, con dietro le stesse azioni: sospendere, riattivare, cambiare pacchetto ed eliminare. L’agente si connette verso l’esterno dalla propria rete, così nessuno dei due server ha bisogno di una porta in entrata aperta e non viene installato nulla su nessuno dei due. Gli account che non sono stati creati tramite Provibr vengono lasciati intatti finché non si importano, così un pannello che ha già quattrocento account diventa qualcosa che si adotta anziché qualcosa che si ricostruisce.

Non sposta i Suoi dati. Elimina il motivo per rimandarne lo spostamento.

Da leggere dopo

I prezzi di listino cPanel 2026 provengono dalla copertura pubblica dell’annuncio in vigore dal 1° gennaio 2026; i prezzi DirectAdmin sono stati rilevati su directadmin.com il 21 agosto 2026. Ogni comportamento delle API qui descritto è stato misurato su server cPanel e DirectAdmin in funzione durante la costruzione delle integrazioni Provibr. Non viene fatta alcuna affermazione sugli strumenti di conversione dati di alcun fornitore, che non abbiamo testato.

Inizi con un host e un agente

Crei un account, installi l’agente con un solo comando e colleghi il suo primo host Proxmox. Il periodo di prova dura 14 giorni e non chiede alcun dato di pagamento.