In genere molti sviluppatori lavorano con il proprio computer e usano magari MAMP per far girare i propri siti web in locale, nel qual caso può sorgere il bisogno di testare i propri lavori anche con un certificato SSL e in https in localhost, vediamo come si può installare un certificato SSL utilizzando il proprio Mac Osx (in questo caso High Sierra 10.13.6), MAMP con Apache e Chrome.

Come installare un certificato SSL e usarlo con MAMP

Vediamo i passi da fare per poter installare un certificato SSL per lavorare con il proprio MAC in locale.

Installare MAMP

Se non lo avete installato, ovviamente il primo passo è installare MAMP. MAMP è una soluzione veloce per macOS e Windows per crearsi un ambiente di sviluppo locale. Combina i software che in genere troviamo nel server hosting per far girare il nostro sito web: Apache oppure NGINX e MySQL, PHP ed è una applicazione molto usata dagli sviluppatori in genere. Non mi dilungo su come installarlo, in rete si possono trovare migliaia di tutorial per questo.

Generazione di un certificato autofirmato per uso locale

Da Chrome 58, i certificati da utilizzare su localhost devono avere un nome alternativo soggetto SAN. Ottenere un certificato con le giuste proprietà può essere un compito scoraggiante, ma fortunatamente in rete si possono trovare delle soluzioni. La guida scritta da Alexander Zeitler può essere di aiuto per questo, bisogna usare un po' il terminale e la riga di comando, ma non dovrebbe essere troppo complicato seguendo le sue istruzioni.

Riassumiamo in pratica come si crea un certificato con SAN per localhost:

Generazione del certificato

Apriamo un terminale e digitiamo i comandi di seguito:

mkdir ~ / ssl /

che serve per creare una directory chiamata ssl nella cartella principale, fatto questo dobbiamo posizionarci nella directory creata digitando:

cd ~ / ssl

a questo punto creiamo un file chiamato server.csr.cnf . Ognuno userà il suo editor di testo preferito, io in questo caso sto usando vi e con un comando solo creo e apro il file:

vi server.csr.cnf

Appena vi compare il file vuoto e aperto digitate il comando i che attiva la modalità di inserimento dati dell'editor vi e quindi fate un copia e incolla o scrivete le seguenti informazioni (se avete interesse a capire di più sugli attributi di ogni campo dopo [dn] potete consultare questa guida di Oracle). Chiaramente potete modificare gli attributi a piacere per inserire quelli della vostra organizzazione:


[req]

default_bits = 2048

prompt = no

default_md = sha256

distinguished_name = dn

[dn]

C=US

ST=New York

L=Rochester

O=End Point

OU=Testing Domain

emailAddress=your-administrative-address@your-awesome-existing-domain.com

CN = localhost

Appena sicuri di aver copiato tutto e/o di avere scritto bene, per salvare il file, digitare prima il tasto ESCe poi

:wq

Seguito da invio. In questo modo si salva il tutto e si esce dalla modifica del file.

Ora abbiamo bisogno di creare un altro un file chiamato v3.ext

vi v3.ext

sempre all'apertura del file digitiamo il comando i per iniziare l'inserimento e copiamo il seguente contenuto:

authorityKeyIdentifier=keyid,issuer

basicConstraints=CA:FALSE

keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment

subjectAltName = @alt_names

[alt_names]

DNS.1 = localhost

Come prima di nuovo digitiamo ESC per uscire dalla modalità inserimento e per salvare uscire di nuovo digitiamo:

:wq

Ora verifichiamo che i file siano nella directory digitando:

ls -la

Che mostrerà tutti i file nella directory ~/ssl/. E magari controlliamone il contenuto a video con il comando:

cat (nomedelfile)

per verificare di aver scritto bene tutto.

A questo punto siamo pronti per generare una chiave privata RSA, quindi digitiamo a terminale il seguente comando:

openssl genrsa -des3 -out ~ / ssl / rootCA.key 2048

Fatto questo Successivamente genereremo il certificato radice (root) che sarà valido per 1024 giorni:

openssl req -x509 -new -nodes -key ~ / ssl / rootCA.key -sha256 -days 1024 -out ~ / ssl / rootCA.pem

Successivamente andiamo a creare la chiave privata per il certificato (server.key):

openssl req -new -sha256 -nodes -out server.csr -newkey rsa: 2048 -keyout server.key -config <(cat server.csr.cnf)

Ed infine generiamo il certificato (server.crt):

openssl x509 -req -in server.csr -CA ~ / ssl / rootCA.pem -CAkey ~ / ssl / rootCA.key -CAcreateserial -out server.crt -days 500 -sha256 -extfile v3.ext

Se tutto è andato per il verso giusto abbiamo generato il nostro certificato SSL e verifichiamo che il certificato abbia la SAN digitando quanto segue nel terminale:

openssl x509 -text -in server.crt -noout

Diamo un'occhiata e controlliamo che ci sia contenuto questo testo:

X509v3 Subject Alternative Name:

DNS:localhost

Aggiungere rootCA.pem e server.crt all'elenco dei CA root attendibili

Prima che il certificato venga accettato dal browser, è necessario aggiungere sia rootCA.pem sia server.crt all'elenco dei CA root attendibili per il nostro Mac. La cosa si può fare aprendo Accesso portachiavi, per aprire Accesso Portachiavi bisogna aprire il Finder -> Applicazioni -> Utility -> Accesso Portachiavi , poi cliccare su "Sistema" e selezionare la categoria "Certificati".

Per aggiungere i due files rootCA.pem e server.crt, apriamo un'altra cartella del Finder, cerchiamo la cartella ~/ssl che abbiamo precedentemente creato quindi trasciniamo i due files, uno per volta, all'interno dell'Accesso Portachiavi che nel frattempo abbiamo lasciato aperto. Quindi li vedremo entrambi comparire nel portachiavi.

Ma non basta. Perché il certificato funzioni, dobbiamo assicurarci che il certificato sia attendibile. Per fare ciò, facciamo doppio clic nel certificato 'localhost' e poi nella nuova finestra che si sarà aperta, espandiamo 'Attendibilità' e nel campo 'Quando si usa questo certificato' selezioniamo 'Fidati sempre', all'uscita dal menu e il certificato dovrebbe apparire con una iconcina + su sfondo verde. Fatto!

Siamo pronti per configurare Apache!

Configurazione di Apache per SSL

I file di configurazione di Apache che dobbiamo configurare per l'uso del certificato sono:

httpd.conf che si trova nella directory /Applications/MAMP/apache/conf/httpd.conf e httpd-ssl.conf situato in /Applications/MAMP/apache/conf/extra/httpd-ssl.conf.

Forse è inutile dirlo, ma meglio fare un backup della tua configurazione attuale ovvero dei due files prima di continuare!

Configurazione di httpd.conf

Per prima cosa aprire il file httpd.conf e se sono commentate, rimuovere il commento dalle seguenti righe o accertarsi che non lo siano:

LoadModule ssl_module modules / mod_ssl.so

Include /Applications/MAMP/conf/apache/extra/httpd-ssl.conf

È possibile che queste righe non siano presenti nel qual caso aggiungetele al file.

Quindi impostare Servername su localhost 443 (assicurarsi che nel file sia definito un solo Servername)

Servername localhost:443

Per il file httpd.conf queste sono tutte le modifiche che servono

Configurazione di httpd-ssl.conf

Quindi, nel file httpd-ssl.conf, procedete come segue:

Impostate il comando Listen

Listen 443

Poi trovate nel file la configurazione di virtualhost che assomiglia a questa:

# General setup for the virtual host
DocumentRoot “/Applications/MAMP/Library/htdocs”
ServerName localhost:443
ServerAdmin you@example.com
ErrorLog “/Applications/MAMP/Library/logs/error_log”
TransferLog “/Applications/MAMP/Library/logs/access_log”

# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine off

Solo un paio di cose devono essere cambiate in questa configurazione. Innanzitutto, VirtualHost dovrebbe essere impostato su *:443, anziché su _default_:443. E assicuratevi che DocumentRoot sia corretto per la vostra configurazione. ServerName deve essere modificato in localhost:443. Infine, SSLEngine deve essere acceso. Il risultato dovrebbe apparire in questo modo:

# General setup for the virtual host
DocumentRoot “/Applications/MAMP/htdocs”
ServerName localhost
ServerAdmin you@example.com
ErrorLog “/Applications/MAMP/Library/logs/error_log”
TransferLog “/Applications/MAMP/Library/logs/access_log”

# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on

Ora per il corretto funzionamento è necessario copiare i files SSL creati precedentemente dalla directory ~/ssl alla directory /Applications/MAMP/conf/apache e non ci sarà bisogno di altre modifiche nel file httpd-ssl.conf

E' possibile copiare il file server.crt e server.key in un'altra directory, ma è necessario assicurarsi di definire il percorso giusto in httpd-ssl.conf.

Visitate in chrome https://localhost per vedere se la cosa funziona:

OK! Questo è tutto! Ora dovreste avere un ambiente di sviluppo locale con SSL!

Risoluzione dei problemi

Se vi sorgono dei problemi o trovate degli errori o la cosa non vi funziona, ci sono alcuni accorgimenti utili per scovare gli errori. Una è quella di cercare possibili duplicati di configurazione che creano conflitti eseguendo il seguente comando nel Terminale:

grep -r listen /Applications/mamp/conf

Questo mostrerà tutte le istanze in 'ascolto' nella directory di configurazione di MAMP.

Altro problema: una volta risolto l'errore, il certificato SSL funziona, ma tutte le richieste https://localhost hanno provocato un errore 404. Questo errore in genere si puà verificare perché "DocumentRoot" è stato definito due volte, sia in httpd.conf che in httpd-ssl.conf. La rimozione di "DocumentRoot" da httpd-ssl.conf dovrebbe risolvere questo problema.

La cosa a volte più noiosa, è successo anche a me, è che lanciando MAMP dal suo pannello grafico Apache non parte, e addirittura non scrive l'errore nei logs, questo è un bug di MAMP, che spero risolvano, ovvero Apache, purtroppo, non scrive tutti gli errori nel file apache_error.log nella directory /Applications/MAMP/logs/.
Se ciò accade, e come ho detto è già successo e può accadere, si può provare a riavviare Apache tramite il Terminale usando questo comando:

sudo /Applications/MAMP/Library/bin/apachectl restart

oppure

sudo /Applications/MAMP/Library/bin/apachectl start

In questo modo Apache mostrerà errori a terminale che non sono arrivati ​​al file di registro, dandovi delle indicazioni utili per la risoluzione di eventuali problemi.

Uno degli strumenti più utili per i webmaster, gli sviluppatori e i proprietari di siti di ogni tipo è Google PageSpeed Insights. Ma questa utility messa a disposizione da Google è diventata molto famosa e molti si sono fatti ossessionare dal punteggio ricavato ottimizzando il proprio sito e passano delle ore per cercare di ottenere il punteggio di 100/100 in questo test.

La verità è che questa è una perdita di tempo o tantomeno non è un lavoro utile perchè non è esattamente questo il modo in cui va utilizzato Google PageSpeed. Bisognerebbe invece concentrarsi sulle raccomandazioni che questo utilissimo strumento vi propone per il Vostro sito web invece di cercare di ottenere il risultato con il numero in cima alla pagina e sicuramente si avranno molti più vantaggi per il sito web.

Molti pseudo webmaster o peggio, pseudo sviluppatori scrivono articoli web su come ottenere il punteggio cento per cento da Google Pagespeed, millantando di aver ottenuto tale punteggio con immagini più o meno truccate, ma la verità è un pochino anzi molto diversa.

Ottenere il punteggio di 100 per 100 su Google Pagespeed è molto difficile, anzi direi impossibile e sfido qualcuno con un sito vero con dei contenuti vero che l'abbia raggiunto, mi scriva pure e mi dimostri che è vero.

E' difficile persino con una sola landing page, figuriamoci con un sito web, e con un CMS tipo WordPress o altro diventa un progetto complesso che solo chi è uno sviluppatore esperto può ottenere, e non sempre, dal momento che in un sito web sono presenti tutta una serie di fattori che influenzano il risultato finale in questo senso: progetto grafico, codice, contenuti, realizzazione.

Personalmente ho pensato che la cosa migliore è prima fare, costruire, verificare per riuscire ad ottenere e poi, eventualmente, condividere e suggerire come fare.

Per questo non ho realizzato un articolo, o meglio l'ho fatto, ma per dire che ho invece realizzato un apposito sito web, dove ottengo un risultato quanto più lusinghiero e condivido consigli utili su come poter ottenere il massimo punteggio di cento per cento su Google Pagespeed.

Per chi vuole saperne di più ed approfondire questo argomento lo condivido: PAGESPEED 100 x 100.

Se invece vuoi realizzare un ottimo risultato con il tuo sito ed hai bisogno di uno sviluppatore WordPress che lo sappia fare veramente CHIAMAMI. Analizzerò il tuo sito e potrò fare il lavoro in modo onesto, con risultati certificati e verificabili.

Un errore 502 Bad Gateway si verifica quando si tenta di visitare una pagina Web, ma il client riceve una risposta non valida. Il più delle volte questo errore può verificarsi a causa di un problema sul tuo computer o apparecchiature di rete. Ecco alcune cose che puoi provare. 

Che cos'è un errore 502 Bad Gateway?

Un errore 502 Bad Gateway significa che il server a cui ci si è connessi, attenzione non quello dove é residente il sito, ma quello a cui si é connessi, agisce come un proxy per inoltrare le informazioni da un altro server, ma a sua volta potrebbe aver ricevuto una cattiva risposta da quell'altro server (ricordo che Internet é una rete di server collegati tra loro). Si chiama errore 502 perché quello è il codice di stato HTTP utilizzato dal server per descrivere questo tipo di errore. Queste cattive risposte potrebbero essere dovute a una serie di cause diverse. È possibile che il server sia sovraccarico o che ci siano problemi di rete tra i due server, e, normalmente é solo un problema temporaneo. È anche possibile che ci sia un firewall configurato in modo improprio o anche un errore di codifica e che il problema non venga risolto fino a quando non vengono risolti questi problemi.

Proprio come con gli errori 404 , i progettisti di siti Web possono personalizzare l'aspetto di un errore 502. Pertanto, potresti visualizzare pagine 502 diverse su siti Web diversi. I siti Web potrebbero anche utilizzare nomi leggermente diversi per questo errore. Ad esempio, potresti vedere cose come:

Molte volte, si tratta di un errore temporaneo, altre volte non lo è. Tuttavia, ci sono alcune cose che puoi provare sul tuo PC.

Ricarica la pagina

Rinfrescare la pagina vale sempre la pena. Molte volte l'errore 502 bad gateway è temporaneo e un semplice aggiornamento potrebbe risolvere. La maggior parte dei browser utilizza il tasto F5 per aggiornare e fornisce anche un pulsante Aggiorna da qualche parte sulla barra degli indirizzi. Ci vuole solo un secondo per provare, tentar non nuoce.

Controlla se il sito non funziona per altre persone

Ogni volta che non riesci a raggiungere un sito (per qualsiasi motivo), puoi anche verificare se sei solo tu che stai riscontrando un problema di connessione o se altre persone hanno lo stesso problema. Ci sono molti strumenti online per questo, per esempio uno di questi puó essere downforeveryoneorjustme.com .

Se ricevi un rapporto che dice che il sito non è disponibile per tutti, non c'è molto che puoi fare, ma riprova più tardi. Se il rapporto mostra che il sito è attivo, il problema potrebbe essere dalla tua parte.

Prova un altro browser

È possibile che un problema con il tuo browser potrebbe causare l'errore 502 Bad Gateway. Un modo semplice per verificarlo è utilizzare un browser diverso e vedere se funziona. Puoi utilizzare Google Chrome , Mozilla Firefox , Apple Safari o Microsoft Edge . Se riesci a vedere l'errore anche nel nuovo browser, allora sai che non si tratta di un problema del browser e dovresti provare un'altra soluzione.

Cancella la cache e i cookie del browser

Se si sta provando un browser diverso, è possibile che il browser principale abbia memorizzato nella cache file obsoleti o corrotti che potrebbero causare l'errore 502 Bad gateway. La rimozione di questi file memorizzati nella cache e il tentativo di aprire il sito Web potrebbero risolvere il problema.

Controlla i tuoi plugin ed estensioni

Se si utilizzano le estensioni sul browser, è possibile che una o più estensioni causino il problema. Prova a disabilitare tutte le tue estensioni e poi accedi al sito web. Se l'errore scompare, è probabile che il problema sia causato da un plug-in. Abilita i tuoi plugin uno per uno per trovare il colpevole.

Riavvia i tuoi dispositivi

Quindi, hai utilizzato uno strumento di verifica del sito e hai stabilito che il sito è a posto per te. E hai testato un altro browser e stai avendo lo stesso problema. Quindi sai che il problema è probabilmente qualcosa da parte tua, ma non è il tuo browser.

È possibile che si verifichino strani problemi temporanei con il computer o le apparecchiature di rete (Wi-Fi, router, modem, ecc.). Un semplice riavvio del computer e dei dispositivi di rete potrebbe aiutare a risolvere il problema.

Cambia i tuoi server DNS

A volte, i problemi DNS possono causare errori 502 bad gateway. Cambiare i server DNS non è una soluzione probabile, ma è possibile. E non è troppo difficile da fare. A meno che non li abbia modificati tu stesso, ma probabilmente i tuoi server DNS saranno impostati dal tuo ISP. Puoi cambiarli in un server DNS di terze parti come OpenDNS o Google DNS e questo potrebbe risolvere il problema. E ci sono altri motivi per cui potresti voler cambiare anche i server DNS, come una migliore velocità e affidabilità.

Gli Abbonati alle mailing list sono la linfa vitale di qualsiasi attività commerciale ben organizzata, ma come far crescere le iscrizioni Newsletter?.

E poi, come si può fare per ottimizzare le liste e cercare di sopperire alle cancellazioni? Vediamo insieme una serie di consigli utili per migliorare il rendimento delle iscrizioni Newsletter.

(altro…)

Spesso una domanda pervade i neofiti della rete ai primi tentativi di aprire un blog o sito web: vale la pena registrare un dominio e spendere qualche soldino oppure conviene fare tutto gratis affidandosi a piattaforme gratuite tipo www.blogger.com o www.wordpress.com?

Per prima cosa, bisogna capire dove si vuole arrivare, qual'è l'obiettivo: blog o sito web? Poi capito cosa si vuole fare, può essere che si voglia fare un tentativo, magari anche solo per capire come funziona la cosa.

In questo caso credo che non ci sia niente di meglio di un servizio gratuito dove l'unica spesa, che peraltro non viene mai considerata da nessuno, è il nostro tempo. Se però le prove le abbiamo già fatte e vogliamo fare sul serio, allora credo che sia opportuno registrare un dominio ed affidarsi ad un servizio di hosting serio.

(altro…)
Copyright © 2023 - P. Iva 02677660546


Another project made with

by Marco Brughi
Città di Castello - Perugia - Arezzo - Firenze
Privacy Policy Cookie Policy
heart