Come creare un sito web – Installare WordPress su Google Cloud

Abbiamo già parlato di ciò che non può mancare per costruire un proprio sito: il nome dominio e l’hosting. In questo articolo spiegherò nel dettaglio come installare WordPress su Google Compute Engine e farci girare su un sito gratuitamente. Ho scelto Google Compute Engine proprio perché ha eccellenti performance (è un fulmine!) ed è gratis.

Prerequisiti

Installare WordPress su Google Compute Engine

  1. Registratevi per una prova gratuita di 12 mesi di Google Cloud. Questo passaggio è fondamentale a meno che non vogliate rischiare di pagare. È necessaria una carta di credito/debito (non accetta prepagate) e potrete identificarvi solo come un’azienda. È normale e va bene così.
  2. Adesso che abbiamo 300 $ per 12 mesi e siamo sicuri che non riceveremo addebiti (anche dopo 12 mesi eventuali addebiti richiederanno un’autorizzazione preventiva) andiamo su “Fatturazione” quindi “Aggiungi account di fatturazione” per aggiungere, appunto, un account di fatturazione.
  3. Bene, adesso abbiamo finito la parte “burocratica”. A questo punto dovrete creare un nuovo progetto. Il nome non è importante.
  4. Abilitate la Google Cloud Deployment Manager V2 API andando in API e servizi > Libreria > Cloud Deployment Manager API quindi cliccate su ABILITA. Non c’è bisogno di fare altro, basta cliccare su ABILITA.
  5. Ora dobbiamo installare WordPress. Per fare questo andiamo in Cloud Launcher e cerchiamo WordPress (Google Click to Deploy) quindi AVVIA SU COMPUTE ENGINE. Ci vorrà qualche istante perché Google predisponga il tutto.
  6. A questo punto scegliete il Deployment name che preferite, selezionate us-east1-b come Zone (vanno bene tutte quelle statunitensi tranne quelle della Virginia del Nord), micro (1 vCPU condivisa) 0,6 GB di memoria f1-micro come Machine Type, una vostra mail come Administrator Email (duh), lasciate la spunta, lasciate come spazio su disco quello di tipo standard e aumentate lo spazio a 30 GB, infine lasciate le ultime due spunte. Quindi cliccate su Implementa. Nota: i limiti che vi ho fatto impostare servono per rimanere all’interno dell’Always Free Tier. Ovvero se il sito è piccolo è tutto gratis.
  7. Quando l’installazione di WordPress sarà terminata arriverete su una pagina della quale salverete religiosamente tutte le password, gli ID e gli IP (io consiglio anche uno screenshot). Se cliccate sull’IP da parte a Site address verrete portati sul vostro nuovo sito.
  8. A questo punto dobbiamo rendere l’IP che ci è stato assegnato da Google statico. Andiamo quindi su Rete VPC > Indirizzi IP esterni e cliccando sulla freccina sotto a “Tipo” scegliamo “Statico”. Ci vorrà qualche tempo.
  9. Adesso che l’IP è assegnato permanentemente a noi dobbiamo puntare il sito su quell’IP. Per fare questo dovremo creare dei record DNS loggandoci sul sito di chi ci ha venduto il dominio e andando nella sezione apposita. Non dovrebbe essere difficile da trovare. Una volta lì creeremo due nuove “regole”.
  10. La prima regola che creeremo sarà un A record. Vi verrà chiesto che tipo di record inserire, voi scegliete “A”, lasciate il resto vuoto o con le impostazioni di default e come “valore” (o “data” o “IP”, non so cosa vedrete scritto) inserite il vostro IP.
  11. La seconda regola sarà un CNAME record. Nel campo nome inserite www e come tipo selezionate ovviamente CNAME. Come valore/data/destinazione mettete iltuosito.it lasciando eventuali altri campi vuoti o di default.
  12. A questo punto dobbiamo fare in modo che WordPress mostri l’indirizzo corretto. Quindi ci logghiamo nell’area amministrativa di WordPress andando su http://ilvostroipstatico/wp-admin (ad esempio: http://104.140.144.94/wp-admin). Andiamo quindi in Impostazioni > Generali e qui inseriamo nei campi “Indirizzo WordPress (URL)” e “Indirizzo sito (URL)” l’indirizzo del dominio acquistato. Cliccate su Salva le modifiche in fondo alla pagina e siete a posto.

Complimenti, adesso il vostro sito gira su Google Cloud.

Per 12 mesi eventuali addebiti verranno scalati dal bonus di benvenuto di 300 dollari. Prima della fine del periodo vi consiglio di controllare se ci sono stati addebiti per capire se riuscireste a star dentro all’Alway Free Tier o se per voi non è sufficiente. In ogni caso i prezzi di Google sono ragionevoli quindi personalmente sarei a mio agio pagagando qualche centesimo al mese per avere WordPress velocissimo (con 000webhost è inutilizzabile).

Come creare un sito web – Le basi

Per avere un sito ci sono sostanzialmente due cose che bisogna fare: acquistare un nome dominio e scegliere l’hosting. Il nome dominio è il “nome” del sito, quindi quello che sta dopo “www”. L’hosting è invece lo spazio su disco e le risorse (banda, potenza di calcolo ecc.) necessarie a contenere e a far girare il sito.

Prerequisiti

  • PayPal o una carta di debito o di credito abilitate ai pagamenti online.

Nome dominio

Per avere un proprio sito bisogna innanzitutto acquistare – o meglio noleggiare – un nome dominio. In questo passaggio pagherete quindi un’azienda chiamata registrar che è abilitata a registrare nuovi domini per “affittare” un nome dominio per uno o più anni. Fintantoché pagherete la quota annua il dominio rimarrà assegnato a voi indefinitamente.

Registrare un nuovo dominio è molto semplice e potete affidarvi al registrar che preferite. Per i domini .it il registrar più economico che ho trovato è Internetbs.net che permette di registrare un dominio per un anno a 5,18 €. Se volete rimanere in Italia (ad esempio se siete un’azienda per non avere problemi con la tassazione e/o modelli INTRASTAT) una buona alternativa può essere Tophost che costa invece 7,31 € ma che include anche 200 MB di spazio di hosting, sufficienti per un piccolo sito a basso traffico (con WordPress secondo me non bastano).

Per quanto riguarda i domini .com il più economico che ho trovato è Porkbun a circa 7,52 €, che oltre ad avere un nome simpatico ha anche un’ottima assistenza clienti. Pure qui se vogliamo rimanere in Italia possiamo optare per Tophost che però costa 8,53 €.

ATTENZIONE: quando vi registrate è importante inserire tutti i vostri dati per intero e corretti (quindi niente pseudonimi o robe così) altrimenti rischiate poi problemi col dominio, ad esempio che ve lo tolgano.

ATTENZIONE BIS: i dati che inserite (nome, cognome, mail, indirizzo di residenza con via, civico, CAP e città, numero di telefono… tutto!) saranno visibili per intero a meno che non scegliate l’opzione Whois Privacy. Tophost non offre questo servizio con i domini .com mentre con i .it offre un whois privacy un po’ farlocco nel senso che nome e cognome resteranno comunque visibili a chiunque. Con Internetbs e Porkbun è invece incluso gratuitamente e dovrebbe nascondere tutti i dati personali.

Hosting

Anche per quanto riguarda l’hosting c’è l’imbarazzo della scelta. In questo caso vi sono sia alternative gratuite sia a pagamento. Quello che è importante tenere presente è che per forza di cose l’hosting gratuito avrà delle limitazioni e sarà meno “potente” di quello a pagamento. Tra i più famosi hosting gratuiti ricordiamo sicuramente 000webhost, che funziona un giorno male e l’altro peggio e che mostra banner e pubblicità (qui spiego come toglierli). Abbiamo poi InfinityFree, che ho testato solo brevemente ma che mi ha fatto un’ottima impressione, e dulcis in fundo Google Compute Engine che è quello che sto usando al momento

La soluzione migliore, secondo me, è Google Compute Engine, anche se non nego che metterci su il sito sia stato molto complicato.

In un prossimo articolo spiegherò nel dettaglio come installare WordPress su Google Cloud e avere quindi un hosting ad alte performance gratuitamente.

Se non volete utilizzare WordPress, a questo punto avete comunque tutto quello che vi serve per poter creare un sito vostro. Se volete fare un sito responsive in material design vi consiglio MaterializeCSS che è pieno di codice già fatto che potete modificare e personalizzare a vostro piacimento per creare un sito da zero.

Come risparmiare sull’assicurazione auto

Abbiamo già parlato dell’assicurazione annullamento viaggio, di quella per la protezione acquisti e delle tutele offerte dalla UE in caso di ritardo o cancellazione di un volo. Oggi parleremo dell’assicurazione della macchina e di due semplici modi per risparmiare.

L’assicurazione dell’auto è una di quelle spese alla quale la maggior parte delle persone non può sottrarsi. Quasi tutti hanno un’auto, e se si ha un’auto nel nostro paese è obbligatorio assicurarla, per fortuna.

Il modo migliore e più efficace per risparmiare sull’assicurazione dell’auto è chiaramente quello di fare qualche preventivo per trovare l’assicurazione che offre il miglior rapporto protezioni/premio e di sfruttare eventuali omaggi di benvenuto e affiliazioni.

Personalmente mi trovo molto bene con l’assicurazione di Linear (non ref), del gruppo Unipol. Il sito è ben fatto, l’assistenza è ottima e veloce, accettano PayPal e ci vogliono due secondi per fare un preventivo, dato che prendono automaticamente tutti i dati dal database ANIA. Il gruppo Unipol poi è un colosso, quindi anche sotto quel punto di vista sono tranquillo.

Qui potete fare un preventivo avendo uno sconto del 5% sull’RC auto e del 10% su assistenza legale e assistenza stradale. Paradossalmente con Linear costa meno mettere anche l’assistenza legale se si inserisce anche l’infortunio del conducente.

C’è tuttavia un altro modo meno conosciuto e più “fantasioso” per risparmiare più del 4% sull’assicurazione auto: farla scadere. Detto così sembra una battuta, ma quello che intendo dire è che il secondo comma dell’articolo 1901 del Codice Civile sancisce che fino al 15esimo giorno dopo la scadenza dell’assicurazione questa resta in realtà valida e il contraente non può essere multato. Questo significa che se aspettiamo 15 giorni prima di rinnovare l’assicurazione avremo 15 giorni di assicurazione gratis ovvero il 4,1% dell’anno (e del premio).

Ora, personalmente non ho mai provato questo metodo né mi sento di consigliarlo, tuttavia se chi legge si sente “temerario” e ha necessità di risparmiare qualche decina di euro può provarlo, a sua discrezione.

Come salvare i valori di temperatura e umidità rilevati da Nest

Nell’ambito della domotica – e in particolare dei termostati smart – il termostato Nest è sicuramente uno dei dispositivi più conosciuti. Al momento siamo arrivati alla terza generazione e Nest Labs – di proprietà di Google – ha da poco lanciato un nuovo modello “economico”, il Nest Thermostat E oltre a un sacco di altri dispositivi per la telesorveglianza.

Sfortunatamente, nonstante la prima generazione di Nest sia uscita ben 6 anni fa, ad oggi non è ancora possibile salvare i valori rilevati dal termostato per farsi un’idea dell’andamento della temperatura e dell’umidità nell’abitazione. Questo è un peccato, perché comunque quei dati vengono rilevati costantemente, solo non vengono salvati.

Guardando in rete anni fa mi sono imbattuto in questo blog – che ringrazio – che spiega come fare precisamente questo: loggare e salvare tutte le rilevazioni di Nest.

Tuttavia, visto che l’articolo originario ormai ha due anni e mezzo e richiede qualche modifica dello script (oltre ad essere in inglese), ho deciso di pubblicare una guida passo passo aggiornata e in italiano.

Alternativamente, se volete uno strumento ad hoc per segnare la temperatura (niente umidità purtroppo) e non avete voglia di smanettare potete acquistare un ThermoPeanut a 30 € su Amazon che funziona benissimo e pemette di esportare tutti i dati.

Purtroppo Sen.se, l’azienda che produceva il ThermoPeanut, è fallita. Nessuno dei miei dispositivi uploadda più i dati, hanno cancellato tutte le pagine social e non rispondono più alle mail.

Prerequisiti

  • un account Google (i dati verranno loggati su Google Sheet)
  • un account Nest ovviamente
  • un account di OpenWeatherMap (per sapere la temperatura esterna)

Come loggare i valori rilevati dal termostato Nest

  1. andate su Drive e create un nuovo “Foglio Google” (NUOVO > Fogli Google);
  2. nella prima riga del nuovo foglio scrivete una valore per ogni casella: Data, Target, T Interna, T esterna, Umidità, Riscaldamento, Away (questo passaggio è opzionale);
  3. segnatevi la stringa di caratteri tra /d/ e /edit nell’indirizzo del foglio (se l’URL è https://docs.google.com/spreadsheets/d/1cJoZRwzGY_c12vbyCAHNhPzB_vLidsTiK3V0TTjb21w/edit#gid=0 voi vi segnate 1cJoZRwzGY_c12vbyCAHNhPzB_vLidsTiK3V0TTjb21w);
  4. vi loggate su OpenWeatherMap, create una nuova API key e vi segnate anche questo valore (l’API key è una stringa alfanumerica di 32 caratteri);
  5. cercate la vostra città su OpenWeatherMap e vi segnate la stringa di numeri dopo /city/ nell’URL (per Roma ad esempio è 3169070).

Ok, buona parte del lavoro l’avete già fatto. Adesso dobbiamo mettere insieme lo script. Copiate il codice che trovate a fine articolo, quindi:

  1. aprite il foglio di Google Sheet creato al precedente punto 1 e cliccate su Strumenti > Editor di script;
  2. incollate il codice dello script appena copiato e modificate le prime righe sostituendo ai campi in MAIUSCOLO i valori corrispondenti (lasciando gli apostrofi all’inizio e alla fine);
  3. File > Salva
  4. Pubblica > Distribuisci come applicazione web
    Esegui l ‘applicazione come > Io ([email protected])
    Chi accede all’applicazione > Chiunque, inclusi utenti anonimi
    Implementa > OKVerificate che lo script funzioni correttamente cliccando su Esegui > doGet e andando a verificare nel foglio di Google Sheet se sono comparsi dei valori.
  5. Come ultimo passaggio impostiamo l’intervallo col quale vogliamo segnare i dati cliccando su Modifica > Trigger del progetto corrente > Aggiungi un nuovo trigger usando questi valori:
    Esegui = getData; Eventi = Basato su tempo – Timer minuti – Ogni 15 minuti e salvate.

Se avete fatto tutto correttamente ogni 15 minuti lo script loggerà i valori di temperatura, umidità e lo stato del termostato (caldaia ON/OFF, Away/Home) su una nuova riga del foglio di Google Sheet. Come intervallo potete anche mettere di più o di meno di 15 minuti, tuttavia non consiglio di scendere troppo.

Codice dello script

function doGet() {
var email = ‘MAILDELLACCOUNTNEST‘; //inserite qui la mail che usate per loggarvi su Nest
var password = ‘PASSWORDNEST‘; //inserite qui la password che usate per loggarvi su Nest
var sheetid = ‘STRINGAGOOGLESHEET‘; //inserite qui la stringa che vi siete segnati al precedente punto 3
var apikey = ‘APIKEY‘; //inserite qui la stringa che vi siete segnati al precedente punto 4
var city = ‘IDCITTAMETEO‘; //inserite qui la stringa che vi siete segnati al precedente punto 5

var login_auth = performLogin(email,password);

var headers = {
“Authorization” : ‘Basic ‘+login_auth[‘access_token’],
“X-nl-user-id” : login_auth[‘userid’],
“X-nl-protocol-version” : ‘1’,
‘Accept-Language’: ‘en-us’,
‘Connection’ : ‘keep-alive’,
‘Accept’ : ‘*/*’,
};

var options = {
‘headers’ : headers
};

var request=UrlFetchApp.fetch(login_auth[‘urls’][‘transport_url’]+’/v2/mobile/user.’+login_auth[‘userid’], options);
var result=JSON.parse(request.getContentText());

var structure_id = result[‘user’][login_auth[‘userid’]][‘structures’][0].split(‘.’)[1]
var device_id = result[‘structure’][structure_id][‘devices’][0].split(‘.’)[1]

var current_temp = result[“shared”][device_id][“current_temperature”];
var target_temp = result[“shared”][device_id][“target_temperature”];
var humidity = result[“device”][device_id][“current_humidity”]/100;
var auto_away = result[“shared”][device_id][“auto_away”];
var heater_state = result[“shared”][device_id][“hvac_heater_state”];
var time = new Date();

var wxrequest=UrlFetchApp.fetch(‘http://api.openweathermap.org/data/2.5/weather?id=’ + city + ‘&units=metric&APPID=’ + apikey’);
var wxresult=JSON.parse(wxrequest.getContentText());

var outside_temp = (wxresult[“main”][“temp”]);

var ss = SpreadsheetApp.openById(sheetid);
var sheet = ss.getSheets()[0];

// Appends a new row with 3 columns to the bottom of the
// spreadsheet containing the values in the array
sheet.appendRow( [ time, target_temp, current_temp, outside_temp, humidity, heater_state, auto_away ] );
}

function performLogin(email, password) {
var payload = {
“username” : email,
“password” : password
};

var options = {
“method” : “post”,
“payload” : payload
};

var response = JSON.parse(UrlFetchApp.fetch(‘https://home.nest.com/user/login’, options).getContentText());
if (‘error’ in response) {
throw “Invalid login credentials”;
}
return response
}

function getData(){
var url = ScriptApp.getService().getUrl();
var response = UrlFetchApp.fetch(url);
}

Come comprare biglietti scontati per The Space Cinema a 5 €

Ogni tanto è bello andare al cinema: vedere un film sul grande schermo è un’esperienza diversa ed è molto più coinvolgente. Certi film vanno visti al cinema.

Purtroppo i cinema ormai non hanno più pudore e applicano dei prezzi folli. Per un film in 3D in settimana (manco nel weekend!) The Space Cinema arriva a far pagare più di 10 € solo l’ingresso ai quali bisogna sommare 1 € per gli occhialini e 1-1,5 € per la prenotazione online. Insomma, andare al cinema con tutta la famiglia può diventare costoso.

Fortunatamente su internet è possibile acquistare biglietti di The Space Cinema scontati pagandoli appena 5 € con prevendita inclusa (quindi potete prenotare online gratuitamente). Per fare ciò è necessario:

  • richiedere una tessera Assocard che ha un costo di 15 € e dura un anno;
  • andare nella sezione “Biglietti” e cliccare su “The Space Cinema”;
  • selezionare il tipo di biglietti che si vuole acquistare e il numero;
  • selezionare il tipo di pagamento: con bonifico ci vuole qualche giorno in più per processare l’ordine mentre con PayPal (“carta”) è i biglietti sono disponibili entro 48 ore ma c’è un supplemento del 5% (anche se non si potrebbe).

Dopodiché riceverete una mail che vi informa che i biglietti possono essere scaricati dall’area personale nella sezione “I Miei Ordini”.

Per prenotare bisognerà scegliere un posto alla volta selezionando:

  • ACQUISTO
  • Christmascard/voucher
  • inserire quindi numero e PIN
  • RITIRO AL CINEMA

Alternativamente sotto Natale esce la Christmas Card che costa circa 55 € e dà 10 ingressi con prevendita inclusa. Sfortunatamente scade dopo qualche mese.