Guida operativa · Hosting Netsons

Caricare il nuovo sito su www.studiosmeraldo.it

Istruzioni passo-passo per sostituire il vecchio sito WordPress con il nuovo sito, usando il cPanel Netsons o FTP. Tempo stimato: 30–45 minuti.

1

Preparazione sul tuo PCSalva e organizza i file del sito

  1. Crea sul desktop una cartella chiamata sito-nuovo.
  2. Salva il codice del sito generato come index.html dentro questa cartella (es. con Blocco note → "Salva come" → nome file index.html, tipo "Tutti i file", codifica UTF-8).
  3. Fanne 4 copie rinominate: servizi.html, lavori.html, formazione.html, contatti.html.
  4. In ogni copia: apri il file con un editor (va bene anche Blocco note, meglio VS Code gratuito), cerca <section class="page active" id="home"> e togli la parola active; poi nella sezione della pagina corrispondente al file (es. id="servizi") aggiungi active. Aggiorna anche <title>, la meta description e il <link rel="canonical"> con l'URL della pagina.
  5. Crea nella stessa cartella i file robots.txt, sitemap.xml, .htaccess e invia.php con i contenuti riportati al passo 6 di questa guida.
📁 sito-nuovo/ ├── index.html ← pagina Home ├── servizi.html ├── lavori.html ├── formazione.html ├── contatti.html ├── invia.php ← modulo contatti via email ├── .htaccess ← HTTPS + redirect + cache ├── robots.txt └── sitemap.xml
💡 Se vuoi una cosa più rapida, puoi caricare solo index.html: il sito funziona comunque (il menu a schede è gestito da JavaScript interno). Perderesti però parte del vantaggio SEO delle 5 pagine separate.
🗜️ Quando tutto è pronto, comprimi la cartella in sito-nuovo.zip (tasto destro → "Comprimi" su Mac / "Invia a → Cartella compressa" su Windows): renderà il caricamento molto più veloce.
2

Prima di toccare anythingBackup del vecchio sito WordPress

  1. Vai su netsons.com → Area Clienti → accedi con le tue credenziali.
  2. Nella lista dei servizi clicca sul tuo hosting per studiosmeraldo.it → pulsante "Accedi a cPanel" (in alternativa: https://studiosmeraldo.it/cpanel oppure :2083 dopo il dominio).
  3. In cPanel apri File Manager → entra nella cartella public_html → Seleziona tutto → tasto Comprimi (Zip) → scarica lo zip sul PC. Questo è il backup dei file.
  4. Torna in cPanel → apri phpMyAdmin → a sinistra seleziona il database di WordPress → scheda Esporta → metodo "Rapido", formato SQL → Esegui → scarica il file .sql. Questo è il backup del database.
  5. Annota gli indirizzi (URL) delle vecchie pagine del sito: serviranno per i redirect al passo 6.
⚠️ Non saltare questo passo: una volta cancellati i file di WordPress, senza backup non potrai più recuperare testi e immagini del vecchio sito.
3

Clean-upSvuota la cartella public_html

  1. In File Manager di cPanel, dentro public_html, elimina: wp-admin/, wp-content/, wp-includes/, index.php, wp-config.php, xmlrpc.php, .htaccess vecchio e ogni altro file/cartella di WordPress.
  2. Se il sito era stato installato con Softaculous (auto-installer Netsons), disinstallalo anche da lì: cPanel → Softaculous → Installazioni → icona cestino. Altrimenti rischi che script residui ricreino file.
  3. La cartella public_html deve rimanere vuota (o quasi).
4

CaricamentoCarica i nuovi file — due metodi alternativi

Opzione AFile Manager cPanel (consigliata)

  1. cPanel → File Manager → entra in public_html.
  2. Clicca Carica (Upload) in alto → trascina sito-nuovo.zip → attendi il 100%.
  3. Torna in public_html, tasto destro sullo zip → Estrai (Extract).
  4. Se l'estrazione crea una sottocartella, entra dentro, seleziona tutti i file e usa Sposta (Move) verso /public_html: index.html deve trovarsi direttamente in public_html, non dentro una sottocartella.
  5. Elimina lo zip dal server.

Opzione BFTP con FileZilla

  1. Scarica FileZilla Client (gratuito) da filezilla-project.org.
  2. Recupera i dati FTP: Area Clienti Netsons → dettagli hosting (host FTP, utente, password). Spesso l'host è ftp.studiosmeraldo.it o il nome del server Netsons indicato nell'email di attivazione.
  3. FileZilla → File → Gestore siti → Nuovo sito → Host, Porta 21, utente e password → Modalità di trasferimento: Passiva → Connetti.
  4. Nel pannello di destra (server) entra in public_html.
  5. Nel pannello di sinistra (PC) apri la cartella sito-nuovo (già estratta, non lo zip), seleziona tutti i file e trascinali a destra: parte il caricamento.
✅ Verifica rapida: apri https://www.studiosmeraldo.it in una finestra di navigazione anonima (per evitare la cache del vecchio sito). Devi vedere il nuovo sito.
5

SicurezzaAttiva il certificato SSL (HTTPS)

  1. In cPanel cerca "SSL/TLS Status" (o Let's Encrypt SSL nella sezione Sicurezza).
  2. Seleziona studiosmeraldo.it e www.studiosmeraldo.it → clicca "Run AutoSSL" e attendi qualche minuto: il lucchetto verde si attiva da solo. Sui piani Netsons il certificato Let's Encrypt è gratuito e incluso.
  3. Il file .htaccess del passo successivo forza automaticamente tutto il traffico su https://www.
6

File di supportoCrea .htaccess, robots.txt, sitemap.xml e invia.php

Questi quattro file vanno creati sul PC (Blocco note o VS Code, salvataggio in UTF-8) e caricati in public_html. Contenuto esatto:

📄 .htaccess — forza HTTPS/www, redirect 301 dalle vecchie pagine WordPress, compressione e cache (velocità = SEO):

RewriteEngine On

# Forza HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

# Forza www
RewriteCond %{HTTP_HOST} ^studiosmeraldo\.it [NC]
RewriteRule ^(.*)$ https://www.studiosmeraldo.it/$1 [R=301,L]

# Redirect 301 dalle vecchie pagine WordPress (adatta gli URL ai tuoi reali)
Redirect 301 /contatti/    https://www.studiosmeraldo.it/contatti.html
Redirect 301 /servizi/     https://www.studiosmeraldo.it/servizi.html
Redirect 301 /chi-siamo/   https://www.studiosmeraldo.it/index.html

# Tutto il resto → home (da lasciare PER ULTIMO)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ https://www.studiosmeraldo.it/index.html [R=301,L]

# Compressione e cache browser
<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/css application/javascript image/svg+xml
</IfModule>
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType text/html "access plus 1 hour"
  ExpiresByType text/css "access plus 1 month"
  ExpiresByType image/svg+xml "access plus 1 month"
</IfModule>
📌 Per creare .htaccess dal File Manager Netsons: clicca + File dentro public_html e scrivi esattamente .htaccess (col punto iniziale). Se non vedi i file che iniziano per punto, attiva "Show Hidden Files" nelle impostazioni in alto a destra del File Manager.

📄 robots.txt:

User-agent: *
Allow: /
Sitemap: https://www.studiosmeraldo.it/sitemap.xml

📄 sitemap.xml:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://www.studiosmeraldo.it/</loc><priority>1.0</priority><changefreq>weekly</changefreq></url>
  <url><loc>https://www.studiosmeraldo.it/servizi.html</loc><priority>0.9</priority><changefreq>monthly</changefreq></url>
  <url><loc>https://www.studiosmeraldo.it/lavori.html</loc><priority>0.9</priority><changefreq>monthly</changefreq></url>
  <url><loc>https://www.studiosmeraldo.it/formazione.html</loc><priority>0.8</priority><changefreq>monthly</changefreq></url>
  <url><loc>https://www.studiosmeraldo.it/contatti.html</loc><priority>0.8</priority><changefreq>yearly</changefreq></url>
</urlset>

📄 invia.php — riceve il modulo contatti e ti manda l'email (Netsons supporta PHP con funzione mail() già attiva; sostituisci l'email di destinazione):

<?php
header('Content-Type: application/json; charset=utf-8');
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    http_response_code(405);
    exit(json_encode(['ok' => false, 'msg' => 'Metodo non consentito']));
}
$nome   = trim($_POST['nome'] ?? '');
$email  = filter_var(trim($_POST['email'] ?? ''), FILTER_VALIDATE_EMAIL);
$tel    = trim($_POST['telefono'] ?? '-');
$comune = trim($_POST['comune'] ?? '');
$tipo   = trim($_POST['tipo'] ?? '');
$msg    = trim($_POST['messaggio'] ?? '');

if ($nome === '' || !$email || $msg === '') {
    http_response_code(400);
    exit(json_encode(['ok' => false, 'msg' => 'Campi obbligatori mancanti']));
}

$destinatario = 'info@studiosmeraldo.it';   // ← LA TUA EMAIL
$oggetto = "[Sito] Richiesta: $tipo — $nome ($comune)";
$corpo   = "Nome: $nome\nEmail: $email\nTelefono: $tel\nComune: $comune\nTipo: $tipo\n\nMessaggio:\n$msg";
$headers = "From: sito@studiosmeraldo.it\r\nReply-To: $email\r\nContent-Type: text/plain; charset=UTF-8";

if (mail($destinatario, $oggetto, $corpo, $headers)) {
    echo json_encode(['ok' => true]);
} else {
    http_response_code(500);
    echo json_encode(['ok' => false, 'msg' => 'Errore invio']);
}
Il modulo contatti del sito è già programmato così: prova prima a inviare a invia.php; se il file non c'è o l'hosting non lo esegue, apre automaticamente il tuo client email con la richiesta precompilata. Quindi funziona in ogni caso.
7

Post-lancioRegistra il sito su Google (indispensabile per la SEO)

  1. Google Search Console (search.google.com/search-console) → "Aggiungi proprietà" → tipo Dominio → studiosmeraldo.it → copia il record TXT di verifica → in cPanel Netsons apri Zone Editor → accanto al dominio clicca Manage → Add TXT Record → incolla il valore → salva. Torna su Search Console e clicca "Verifica". Poi menu Sitemap → invia sitemap.xml.
  2. Google Business Profile (business.google.com): crea la scheda dello studio — categoria "Ingegnere civile", con indirizzo, telefono, orari, foto dei lavori e area di servizio (comuni del cratere 2016). È lo strumento n.1 per le ricerche locali.
  3. Compila nel footer del sito e nei codici JSON-LD (in cima all'HTML) i tuoi dati veri: nome, P.IVA, numero d'iscrizione all'Ordine, indirizzo e telefono.

✅ Checklist finale — clicca le voci per spuntarle

🆘 Problemi comuni: se vedi ancora il vecchio sito → svuota cache del browser o usa la navigazione anonima; se compare "Errore 500" → controlla la sintassi del .htaccess; se la pagina è bianca → verifica che index.html sia in public_html e non in una sottocartella. In ogni caso l'assistenza Netsons risponde dai contatti dell'Area Clienti (ticket/chat).