Nginx

Come installare più domini su un server Nginx

Come installare più domini su un server Nginx
Al giorno d'oggi, molti webmaster eseguono più nomi di dominio nello stesso server in quanto riduce i costi e la complessità nella gestione di molti siti web. Come server web, questa guida utilizza Nginx grazie alle sue elevate prestazioni, flessibilità e facilità di configurazione. Questa guida insegna come installare più nomi di dominio nello stesso server web Nginx e crittografare il traffico verso entrambi i domini gratuitamente.

Installa Nginx

Per impostazione predefinita, Ubuntu non viene fornito con Nginx. Pertanto, deve essere installato manualmente con i seguenti comandi.

sudo apt-get update
sudo apt-get install Nginx

Il primo comando aggiorna le informazioni del repository locale, mentre il secondo comando installa Nginx nel sistema.

Configura il firewall

La configurazione del firewall dipende dal software firewall installato nel sistema. Poiché sul mercato sono disponibili diversi firewall, non è facile insegnare loro come configurarli. Pertanto, questa guida mostra solo come configurare il firewall predefinito e integrato - UFW, noto anche come firewall semplice. Altri firewall dovrebbero avere una configurazione simile a questo.

elenco di app sudo ufw
sudo ufw allow 'Nginx HTTPS'
sudo ufw enable

Il primo comando elenca i profili disponibili da utilizzare nel firewall. Il secondo comando utilizza il profilo HTTPS Nginx nell'elenco allow (aka Whitelist) del firewall e il terzo comando abilita il firewall. Questa guida in seguito mostra come utilizzare HTTPS. HTTPS è necessario al giorno d'oggi in quanto protegge la connessione dati tra il client e il server. I browser come Chrome verranno automaticamente impostati sulla versione HTTPS di qualsiasi sito in futuro; quindi è necessario avere SSL abilitato per qualsiasi sito web, specialmente quando il proprietario del sito web intende migliorare il suo punteggio SEO e la sicurezza.

Configura il file system

Anche se Nginx supporta la fornitura di contenuti tramite più nomi di dominio, è configurato per impostazione predefinita per servire i contenuti tramite un singolo dominio. Il percorso predefinito è Nginx è /var/www/html. Più domini richiedono di avere più directory. Le seguenti istruzioni mostrano come creare più directory per servire i contenuti attraverso più domini.

  1. Crea una directory per ogni dominio con i seguenti comandi. Il flag p è necessario per creare le directory padre, il che significa che quando il www o qualsiasi altra directory nell'indirizzo non esiste, crea l'intera riga di directory con flag p.
  2. sudo mkdir -p /var/www/nucuta.com/html
    sudo mkdir -p /var/www/nucuta.net/html.
  3. Assegna la proprietà alle directory. Ciò garantisce che l'utente abbia il controllo totale sulle directory. Tuttavia, qui l'utente è preso dall'utente attualmente connesso, e quindi è importante accedere all'account utente che verrà assegnato alla directory. Il primo segmento di $USER è per l'utente e il secondo segmento è per il gruppo a cui appartiene l'utente.
  4. sudo chown -R $USER:$USER /var/www/nucuta.com/html
    sudo chown -R $USER:$USER /var/www/nucuta.net/html
  5. Modificare i permessi delle directory con i seguenti comandi. Ci sono 3 entità e 3 permessi nei file system Linux. Nell'esempio seguente, la prima cifra è per un utente, la seconda cifra è per il gruppo e l'ultima cifra è per tutti (aka public). Il permesso di lettura ha il valore di 4, il permesso di scrittura ha il valore di 2 e il permesso di esecuzione ha il valore di 1. Questi numeri possono essere sommati per alterare il permesso di un'entità, ad esempio, 755 significa, USER ha il permesso di READ, WRITE ed EXECUTE (4+2+1 = 7), GROUP ha il permesso di READ ed EXECUTE (4+1 = 5), ALL ha il permesso di fare lo stesso. L'autorizzazione viene applicata a file e directory entrambi con regole diverse. Le regole sono elencate nella seguente tabella.
  6. sudo chmod -R 755 /var/www/nucuta.com/html
    sudo chmod -R 755 /var/www/nucuta.net/html
  7. Una volta assegnata l'autorizzazione, creare una pagina predefinita per ciascun dominio nel browser Web quando viene chiamato il dominio nudo. Per dominio nudo si intende il dominio senza sottodomini, esempio nucuta.come.
  8. nano /var/www/nucuta.com/html/indice.html.
    nano /var/www/nucuta.net/html/indice.html.
  9. Aggiungi il seguente codice standard in ogni file indice e salva come indice.html nella rispettiva directory (come visto sopra).


Benvenuto nel sito uno


Successo!



Configura Nginx

La configurazione di Nginx non è così difficile poiché Nginx per impostazione predefinita supporta più domini. Anche se è possibile utilizzare le informazioni di configurazione di più domini nello stesso file, è consigliabile utilizzare più file per le informazioni di configurazione di ciascun dominio. Il file di configurazione predefinito è denominato "default" e si trova in /etc/nginx/sites-available/default

  1. Passare a /etc/nginx/sites-available/default ed eliminare tutte le informazioni di configurazione. Usa un editor di testo come nano o blocco note++
  2. nano /etc/nginx/sites-available/default
  3. Copia e incolla la seguente configurazione e salvala.
  4. server
    ascolta 80 default_server;
    ascolta [::]:80 default_server;
    radice /var/www/html;
    indice indice.indice html.indice htm.nginx-debian.html;
    nome del server _;
    Posizione /
    try_files $uri $uri/ =404;

  5. Copia le informazioni di configurazione nel file predefinito in un file di configurazione specifico del dominio con il seguente comando.
  6. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.come
  7. Ripetere il suddetto passaggio anche per l'altro dominio con il seguente comando.
  8. sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/nucuta.netto
  9. Apri entrambi i file con un editor di testo come nano (nano ) e modifica il valore della direttiva server_name come segue.
  10. In /etc/nginx/sites-available/nucuta.com file
    nome_server nucuta.come
    In /etc/nginx/sites-available/nucuta.file di rete
    nome_server nucuta.netto
  11. Una volta configurati entrambi i file, copiali nelle seguenti directory per attivare i file di configurazione. Crea un collegamento simbolico tra il file effettivo e la directory; quindi in futuro, solo i file in una directory disponibile per il sito devono essere modificati per apportare modifiche sia nelle directory disponibili per il sito che in quelle abilitate per il sito.
  12. sudo ln -s /etc/nginx/sites-available/nucuta.com /etc/nginx/sites-enabled/
    sudo ln -s /etc/nginx/sites-available/nucuta.net /etc/nginx/sites-enabled/
  13. Passare attraverso i file di configurazione, apportare ulteriori modifiche e utilizzare i seguenti comandi per rendere effettive le modifiche. Il primo comando garantisce che i file di configurazione siano privi di informazioni di configurazione non valide e il secondo comando garantisce che il server venga ricaricato o riavviato correttamente per rendere effettive le modifiche. Usa i comandi di ricarica o di riavvio. È preferibile ricaricare, ma è possibile utilizzare il riavvio se la ricarica non ha funzionato.
  14. systemctl config nginx
    systemctl ricarica nginx o systemctl riavvia nginx.

Configura i record DNS

La configurazione delle impostazioni DNS dipende dal provider DNS. Tuttavia, tutti i provider DNS hanno un'interfaccia simile. Per impostazione predefinita, il registrar di domini fornisce l'accesso ai record DNS. Questa fase richiede l'indirizzo IP del server in cui è ospitato il server web nginx. Ottenere l'indirizzo IP dipende interamente dalla piattaforma. Piattaforme come Linode, DigitalOcean, Vultr visualizzano l'IP nella dashboard. Se è difficile da trovare, contattare l'assistenza del rispettivo fornitore di servizi.

  1. Nelle impostazioni DNS, aggiungi un record "A" e usa l'IP del server come valore, nome di dominio come ospite. Assicurati che il nome di dominio utilizzato qui sia lo stesso del nome di dominio utilizzato nel file di configurazione di Nginx. Dopo aver configurato un dominio, ripetilo anche per l'altro dominio.
  2. Lascia che i record DNS vengano aggiornati. Di solito ci vogliono fino a 24 ore, ma di solito è fatto in pochi minuti.

Abilita HTTPS

L'abilitazione di HTTPS è abbastanza semplice e può essere eseguita gratuitamente con letsencrypt. Letsencrypt è un'autorità di certificazione open source che rilascia certificati SSL gratuiti ai webmaster per crittografare il traffico verso il loro sito web.

  1. Installa lo snap-in nel sistema operativo con il seguente comando. Nota che questo segmento utilizzerà un demone snap per installare tutti i pacchetti richiesti invece di apt o apt-get. Snap è una gestione alternativa dei pacchetti e uno strumento di distribuzione che può essere utilizzato per installare pacchetti in Ubuntu e molti altri sistemi operativi Linux. Questo non è necessario per l'installazione quando si dispone di Ubuntu 16.04 LTS o qualsiasi altra versione superiore. Tuttavia, esegui comunque l'ultimo comando per assicurarti che lo snap sia aggiornato.
  2. sudo apt update
    sudo apt install snapd
    sudo snap install core; sudo snap refresh core
  3. Installa il certbot che configura e rinnova i certificati SSL per entrambi i domini. Senza certbot i certificati SSL devono essere installati manualmente. Inoltre, anche il rinnovo deve essere eseguito manualmente. Questo può essere un problema in quanto i certificati di LetEncrypt scadono dopo 3 mesi. Pertanto, il certificato SSL deve essere rinnovato una volta ogni 3 mesi per garantire che il sito possa funzionare correttamente come previsto. Usa il seguente comando per installare il certbot con facilità.
  4. sudo snap install --classic certbot
  5. Certbot è installato nella directory /snap/bin/certbot. Per eseguire il file eseguibile certbot tramite la riga di comando senza specificarne il percorso completo, eseguire il comando seguente. Crea un collegamento simbolico tra snap/bin/certbot e la directory /usr/bin/certbot, consentendo così l'esecuzione dell'eseguibile certbot sull'interfaccia della riga di comando senza specificarne il percorso completo.
  6. sudo ln -s /snap/bin/certbot /usr/bin/certbot
  7. Configura l'istanza di Nginx nel sistema con il seguente comando. C'è un altro comando che mira direttamente al dominio specifico durante la configurazione di SSL. Il secondo comando specificato di seguito installa e configura il certificato SSL per il nome di dominio specificato.
  8. sudo certbot -nginx
    certbot --nginx -d nucuta.come
  9. Esegui il seguente comando per simulare il processo di rinnovo. Il comando effettivo senza flag -dry-run viene eseguito automaticamente poiché certbot configura un cronjob per eseguire il comando automaticamente dopo alcune volte dopo. È necessario un test di funzionamento a secco per garantire che il certbot possa rinnovare i certificati senza alcun ostacolo.
  10. sudo certbot rinnova --dry-run

Conclusione

La configurazione di più nomi di dominio in un server Web Nginx è abbastanza semplice in quanto fornisce una miriade di opzioni per semplificare il processo. Certbot consente di installare certificati SSL per più domini per un server web Nginx. Come certificato SSL, questa guida utilizza letencrypt che fornisce certificati SSL gratuitamente per qualsiasi numero di domini. L'unico aspetto negativo di LetsEncrypt è la sua breve durata, ma certbot assicura che non sarà un problema per il webmaster con il suo processo di rinnovo automatico.

Il tasto sinistro del mouse non funziona su Windows 10
Se stai utilizzando un mouse dedicato con il tuo laptop o computer desktop ma il il tasto sinistro del mouse non funziona su Windows 10/8/7 per qualch...
Il cursore salta o si sposta in modo casuale durante la digitazione in Windows 10
Se scopri che il cursore del mouse salta o si sposta da solo, automaticamente, in modo casuale durante la digitazione nel laptop o nel computer Window...
Come invertire la direzione di scorrimento del mouse e dei touchpad in Windows 10
Topo e Touchpads non solo rende l'elaborazione semplice, ma anche più efficiente e richiede meno tempo. Non possiamo immaginare una vita senza questi ...