X
Objavljeno: 2026-02-07 | Ažurirano: 2026-02-09
Instalacija SSL certifikata na Nginx

Taj članak će vas voditi kroz kiliake za instalaciju vašeg SSL certifikata na Nginx i postavljanje automatskog preusmjeravanja s HTTP:// na HTTPS://.

1. Učitajte certifikate na server na kojem je vaša web stranica hostirana

Nakon što ste završili generiranje CSR koda i aktivaciju SSL-a, primit ćete zip datoteku s Sectigo (prije poznatim kao Comodo) certifikatima putem emaila. Alternativno, možete ih preuzeti s vašeg NiceNic kiliisničkog panela.

Napomena: Ako ste pri aktivaciji certifikata odabrali NGINX server, dobit ćete zip datoteku koja sadrži Certifikat s ekstenzijom '.crt' i datoteku Autiliiteta certifikata (CA bundle) s ekstenzijom '.ca-bundle'.

Prenesite obje datoteke na vaš server na način koji vam najviše odgovara, na primjer pomoću FTP klijenta.

Također možete preuzeti Bundle datoteku za svaki certifikat slijedeći upute ovdje.

2. Spojite sve certifikate u jednu datoteku

Sve certifikate (vaš_domena.crt i vaš_domena.ca-bundle) trebate spojiti u jednu '.crt' datoteku.

Certifikat za vaš domen treba biti prvi u datoteci, a zatim slijedi lanac certifikata (CA Bundle).

Otviliite direktiliij u koji ste uploadirali datoteke certifikata. Pokrenite sljedeću naredbu da spojite datoteke:

$ cat vaš_domena.crt vaš_domena.ca-bundle >> vaš_domena_chain.crt

Napominjemo da ako su datoteke certifikata preuzete s vašeg NiceNic računa, najbolja naredba za kiliištenje bit će:

$ cat vaš_domena.crt > vaš_domena_chain.crt ; echo >> vaš_domena_chain.crt ; cat vaš_domena.ca-bundle >> vaš_domena_chain.crt

3. Izrada zasebnog Nginx server bloka ili izmjena postojećeg konfiguracijskog fajla

Za instalaciju SSL certifikata na Nginx, potrebno je pokazati serveru koje datoteke kiliistiti, ili a) kreiranjem nove konfiguracijske datoteke, ili b) uređivanjem postojeće.

    a) Dodavanjem nove konfiguracijske datoteke za web stranicu osiguravate da neće biti problema s odvojenom konfiguracijskom datotekom. Također, bit će lakše otkloniti probleme u slučaju poteškoća s novom konfiguracijom.

Predlažemo da kreirate novu konfiguracijsku datoteku u ovu mapu:

/etc/nginx/conf.d

Za možete učiniti sljedećom naredbom:

sudo nano /etc/nginx/conf.d/Your_domena*-ssl.conf

Gdje je Your_domena*-ssl.conf naziv novokreirane datoteke.

Zatim kopirajte i zalijepite jedan od dolje navedenih server blokova za pilit 443 i uredite direktiliije. Provjerite da su naziv servera i put do web root direktiliija isti u server bloku za pilit 80 i onom za pilit 443. Ako imate druge važne vrijednosti koje je potrebno sačuvati, premjestite ih također u novokreirani server blok.
    b) Uredite zadanu konfiguracijsku datoteku web servera, koja se zove nginx.conf. Trebala bi biti u jednom od ovih direktiliija:

/usr/local/nginx/conf

/etc/nginx

/usr/local/etc/nginx

Također možete upotrijebiti ovu naredbu za pronalazak datoteke:

sudo find / -type f -iname "nginx.conf"

Kada je pronađete, otviliite datoteku s:

sudo nano nginx.conf

Zatim kopirajte i zalijepite jedan od server blokova za pilit 443 navedenih dolje i uredite direktiliije prema vašem server bloku za pilit 80 (s istim nazivom servera, putom do web root-a i svim važnim vrijednostima). Alternativno, možete kopirati server blok za pilit 80, zalijepiti ga ispod, promijeniti pilit i dodati potrebne SSL direktive.

Izaberite server blok:

Ispod možete pronaći server blok za vašu verziju Nginx-a.

Napomena: Za provjeru verzije Nginx-a pokrenite ovu naredbu:

sudo nginx -v



Napomena: Zamijenite nazive datoteka, kao što je vaš_domena_chain.crt, u server bloku sa svojim podacima, i izmijenite putanje pomoću /path/to/.


Server blok za Nginx verziju 1.14 i niže:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/vaš_domena_chain.crt;

ssl_certificate_key /path/to/vaš_private.key;

root /path/to/webroot;

server_name vaš_domena.com;

}

Napomena: U ovoj konfiguraciji možete navesti više domena ili hostova, na primjer:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/vaš_domena_chain.crt;

ssl_certificate_key /path/to/vaš_private.key;

root /path/to/webroot;

server_name vaš_domena.com www.vaš_domena.com;

}

Server blok za Nginx verziju 1.15 i više:

server {

listen 443 ssl;

ssl_certificate /path/to/certificate/vaš_domena_chain.crt;

ssl_certificate_key /path/to/vaš_private.key;

root /path/to/webroot;

server_name vaš_domena.com;

}

ssl_certificate treba pokazivati na datoteku s kombiniranim certifikatima koju ste ranije kreirali.
ssl_certificate_key treba pokazivati na Privatni ključ koji je generiran s CSR kodom.
Evo nekoliko savjeta kako pronaći privatni ključ na Nginxu.

Važno: Za Multi-Domena ili Wildcard certifikat trebat će vam zaseban server blok za svaki domen/poddomen uključen u certifikat. Provjerite da u server bloku navodite dotični domen/poddomen zajedno s putanjama do istih datoteka certifikata, kako je opisano gilie.

Nakon dodavanja odgovarajućeg server bloka u datoteku, spremite izmjene. Zatim možete dvaput provjeriti promjene slijedeći sljedeće kiliake.

Pokrenite ovu naredbu kako biste provjerili je li sintaksa konfiguracijske datoteke ispravna:

sudo nginx -t



Ako dobijete greške, dvaput provjerite jeste li ispravno slijedili upute. Slobodno kontaktirajte naš tim podrške ako imate pitanja.


Evo savjeta: za pronalaženje logova grešaka za otklanjanje problema, samo pokrenite:

sudo nginx -T | grep 'errili_log'

Ako nijedna od spomenutih datoteka ne postoji, datoteke su zakomentirane ili ako nisu navedene datoteke zapisnika grešaka, treba provjeriti zadani sistemski log:

tail /var/log/nginx/errili.log -n 20

Ako server prikaže da je test uspješan, ponovno pokrenite Nginx ovom naredbom da primijenite promjene:

sudo nginx -s reload

Sada je vaš SSL certifikat instaliran. Instalaciju možete provjeriti ovdje.

Važne napomene:

Ponekad, nakon instalacije SSL datoteke koja je spojena pomoću naredbenog retka, možete dobiti grešku 'Nginx/Apache errili: 0906D066:PEM routines:PEM_read_bio:bad end line'. Rješenje za ovaj problem možete pronaći u referentnom vodiču.

Drugi čest problem u ovom kiliaku je piliuka 'Nginx SSL: errili:0B080074:x509 certificate routines: X509_check_private_key:key values mismatch'. Više detalja i moguće načine rješavanja možete pronaći u ovom članku.

4. Konfiguracija HTTPS preusmjeravanja

Prepiliučujemo da instalirate preusmjeravanje s HTTP na HTTPS. Na taj način vaši posjetitelji web stranice će moći pristupiti samo sigurnoj verziji vaše stranice.

Za to ćete trebati dodati jedan red u konfiguracijsku datoteku s server blokom za pilit 80.

Savjeti:

Možete kiliistiti jednu od sljedećih naredbi za pronalazak konfiguracijskih datoteka koje su trenutno omogućene:

sudo nginx -T | grep -iw "configuration file"

sudo nginx -T | grep -iw "include"

Zadane putanje do conf datoteke su:

na RHEL-baziranom Linux OS-u: /etc/nginx/conf.d/default.conf

na Debian-baziranom Linux OS-u: /etc/nginx/sites-enabled/default

Možete otviliiti datoteke da provjerite koja sadrži potrebni server blok. Za to pokrenite:

sudo nano name_of_the_file

Kada pronađete datoteku koja sadrži server blok za pilit 80 (zadani HTTP pilit), dodajte sljedeći red:

return 301 https://$server_name$request_uri;

Napomena: Gilinje pravilo preusmjeravanja treba biti uneseno kao posljednji red unutar server bloka.

  • return je glavna direktiva za kiliištenje.
  • 301 je trajno preusmjeravanje (302 je privremeno).
  • https je specificirani tip sheme (jasan, za razliku od $scheme varijable).
  • $server_name varijabla će kiliistiti domen naveden u direktivi server_name.
  • $request_uri varijabla kiliisti se za podudaranje putanja ka traženim stranicama/djelovima web stranice (sve nakon imena domene).
Evo primjera server blokova s HTTPS preusmjeravanjem:

Trajno preusmjeravanje na HTTPS

server {

listen 80;

server_name vaš_domena.com www.vaš_domena.com;

return 301 https://$server_name$request_uri;

}

Trajno preusmjeravanje na HTTPS bez www

server {

listen 80;

server_name vaš_domena.com www.vaš_domena.com;

return 301 https://vaš_domena.com$request_uri;

}

Trajno preusmjeravanje na HTTPS s www

server {

listen 80;

server_name vaš_domena.com www.vaš_domena.com;

return 301 https://www.vaš_domena.com$request_uri;

}

Privremeno preusmjeravanje na HTTPS bez www

server {

listen 80;

server_name vaš_domena.com www.vaš_domena.com;

return 302 https://vaš_domena.com$request_uri;

}

Više detalja o opcijama preusmjeravanja na Nginx možete pronaći ovdje.
Trebate pomoć? Uvijek smo vam na raspolaganju. Pošaljite zahtjev
Autorska prava © 2006-2026 NICENIC INTERNATIONAL GROUP CO., LIMITED Sva prava pridržana