GNU/Linux >> Linux Esercitazione >  >> OpenSuse

Come installare e configurare Nginx come proxy OpenSUSE Leap 15.3

In questa guida impareremo come installare Nginx in OpenSUSE Leap 15.3 e configurarlo come server proxy. Configurare un host virtuale Nginx che invia tramite proxy una richiesta da un dominio a un servizio in ascolto su una porta.

Contenuti correlati

  • Come installare e configurare PHP e Nginx (LEMP) su Ubuntu 20.04
  • Come installare lo stack Apache PHP 7.4 (LAMP) su Rocky Linux/Centos 8
  • Come installare e configurare PHP e Nginx (LEMP) su Debian 11
  • Come installare e configurare PHP e Apache (stack LAMP) su Debian 11

Indice dei contenuti

  1. Assicurarsi che il server sia aggiornato
  2. Installazione di Nginx su OpenSUSE Leap 15.3
  3. Avvio e abilitazione del servizio Nginx in OpenSUSE
  4. Configurazione del servizio proxy
  5. Creazione dell'host virtuale Nginx per inoltrare la richiesta
  6. Test della configurazione

1. Garantire che il server sia aggiornato

Prima di procedere, è sempre buona norma assicurarsi che il server sia aggiornato. Usa questi comandi per raggiungere questo obiettivo

sudo zypper refresh
sudo zypper update -y

2. Installazione di Nginx su OpenSUSE Leap 15.3

Nginx, come server web stabile ad alte prestazioni e con un consumo di risorse molto basso. Nginx ha un'architettura asincrona molto più scalabile, basata sugli eventi.

Nginx è disponibile nei repository UpenSUSE predefiniti. Installalo usando questo comando:

sudo zypper install -y nginx

Conferma l'installazione di nginx

~> zypper info nginx
Loading repository data...
Reading installed packages...


Information for package nginx:
------------------------------
Repository     : Main Repository
Name           : nginx
Version        : 1.19.8-3.6.1
Arch           : x86_64
Vendor         : SUSE LLC <https://www.suse.com/>
Installed Size : 2.2 MiB
Installed      : Yes
Status         : up-to-date
Source package : nginx-1.19.8-3.6.1.src
Summary        : A HTTP server and IMAP/POP3 proxy server
Description    :
    nginx [engine x] is a HTTP server and IMAP/POP3 proxy server written by Igor Sysoev.
    It has been running on many heavily loaded Russian sites for more than two years.

3. Avvio e abilitazione del servizio nginx

Il servizio Nginx installato non viene avviato per impostazione predefinita. Per avviare il servizio, usa questo comando:

sudo systemctl start nginx

Conferma che il servizio è attivo e funzionante utilizzando questo comando:

~> sudo systemctl status nginx
● nginx.service - The nginx HTTP and reverse proxy server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
     Active: active (running) since Mon 2021-12-20 18:56:15 UTC; 36s ago
    Process: 31740 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
   Main PID: 31741 (nginx)
      Tasks: 2 (limit: 4587)
     CGroup: /system.slice/nginx.service
             ├─31741 nginx: master process /usr/sbin/nginx -g daemon off;
             └─31742 nginx: worker process

Dec 20 18:56:15 ip-10-2-40-44 systemd[1]: Starting The nginx HTTP and reverse proxy server...
Dec 20 18:56:15 ip-10-2-40-44 nginx[31740]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Dec 20 18:56:15 ip-10-2-40-44 nginx[31740]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Dec 20 18:56:15 ip-10-2-40-44 systemd[1]: Started The nginx HTTP and reverse proxy server.

Per abilitare il servizio all'avvio, utilizzare questo comando:

sudo systemctl enable nginx

4. Configurazione del servizio per il proxy

In questo esempio utilizzeremo un semplice servizio che ho già creato. Ho un servizio Golang qui, ma sentiti libero di usare il tuo servizio.

➜ /tmp/gosimple
2021/12/20 23:38:34 service running, listening on 3000

Testa il servizio

➜ curl -iL http://127.0.0.1:3000/
HTTP/1.1 200 OK
Date: Mon, 20 Dec 2021 20:39:01 GMT
Content-Length: 12
Content-Type: text/plain; charset=utf-8

Hello World!

5. Creazione dell'host virtuale Nginx per inoltrare la richiesta

Nginx ti consente di servire più siti utilizzando host virtuali. Il concetto di host virtuali consente più di un sito Web su un sistema o server Web. I server si differenziano per il loro nome host. I visitatori del sito Web vengono indirizzati dal nome host o dall'indirizzo IP all'host virtuale corretto. L'hosting virtuale consente alle aziende che condividono un server di avere ciascuno il proprio nome di dominio.

Un server Nginx può essere utilizzato per incapsulare i dettagli di configurazione e ospitare più di un dominio su un singolo server. Creeremo un host virtuale per il nostro sito (site1.citizix.com ).

Le configurazioni degli host virtuali Nginx sono archiviate nella directory /etc/nginx/conf.d/ . Creiamo una configurazione per il nostro sito:

sudo vim /etc/nginx/conf.d/site1.citizix.com.conf

Aggiungi il seguente contenuto

server {
    listen 80;
    server_tokens off;
    client_max_body_size 100M;
    server_name site1.citizix.com;

    access_log /var/log/nginx/site1.citizix.com.log;
    error_log  /var/log/nginx/site1.citizix.com.log;

    root /opt/simpleapp;

    if ($host !~* ^(site1.citizix.com)$) {
        return 444;
    }

    location / {
        proxy_redirect     off;
        proxy_set_header   Host $host;
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Host $server_name;
        proxy_pass http://127.0.0.1:3000;
    }
}

Riavviamo nginx per applicare la configurazione:

sudo systemctl restart nginx

6. Testare la configurazione

In questo esempio utilizzeremo il dominio site1.citizix.com per l'host virtuale ma sii libero di utilizzare il dominio di tua scelta. Si noti che il DNS per il dominio da utilizzare dovrebbe essere già configurato per puntare all'indirizzo IP del server. Confermalo con:

dig -t A site1.citizix.com

Se non hai ancora configurato le tue impostazioni DNS o semplicemente non vuoi che il sito sia ancora attivo, puoi modificare il file hosts del tuo computer. Per fare ciò, usa il seguente comando nella CLI del tuo computer locale

sudo vim /etc/hosts

Quindi, aggiungi l'indirizzo IP del tuo vero server seguito dal nome di dominio che stai configurando, ad esempio:

10.2.11.11 site1.citizix.com

Con questa configurazione possiamo fare una richiesta al nostro dominio. Per me funziona bene!

➜ curl -iL http://site1.citizix.com
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 20 Dec 2021 20:51:42 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 12
Connection: keep-alive

Hello World!

Conclusione

Siamo riusciti a installare e configurare Nginx per fungere da proxy in questa guida!


OpenSuse
  1. Come installare Mongodb 5 in Opensuse Leap 15.3

  2. Come installare Java 17 in OpenSUSE Leap 15.3

  3. Come installare e configurare PHP e Apache (stack LAMP) su OpenSUSE Leap 15.3

  4. Come installare e configurare Mariadb 10 in OpenSUSE Leap 15.3

  5. Come installare e configurare PHP e Nginx (LEMP) su OpenSUSE Leap 15.3

Come installare WordPress con HHVM e Nginx su OpenSUSE Leap 42.1

Come installare un desktop KDE OpenSUSE Leap 42.1

Come installare ownCloud 9 con Nginx su OpenSUSE Leap 42.1

Come installare Skype su openSUSE Leap

Come installare NGINX su openSUSE

Come installare Dropbox su openSUSE Leap 42.2