久久999这里只有精品视频|欧美夫妻性生活黄大片|久久九九九九九九热|波多野结衣二区看黄片在线|99性爱视频97厂超碰|欧美国产丝袜成年人二级毛片|中国一圾黄片免费看a级大片|太久思思中文字幕一区|爱爱很舒服欧美91|亚洲男女AV亚洲肏屄

X
Публикувано: 2026-02-07 | Обновено: 2026-02-09
Инсталиране на SSL сертификат в Nginx

Tази статия ще ви преведе през стъпките за инсталиране на вашия SSL сертификат в Nginx и за настройване на автоматично препращане от HTTP:// към HTTPS://.

1. Качване на сертификатите на сървъра, където е хостван вашият уебсайт

След успешно генериране на CSR кода и активиране на SSL, ще получите zip файл със сертификатите на Sectigo (преди известен като Comodo) по имейл. Алтернативно, можете да ги изтеглите от панела на вашия NiceNic акаунт.

Забележка: Ако изберете NGINX сървър при активиране на сертификата, ще получите zip файл съдържащ сертификатен файл с разширение '.crt' и файл с комплект от сертификати на удостоверяващия орган (CA bundle) с разширение '.ca-bundle'.

Качете и двата файла на сървъра по предпочитан от вас начин. Например чрез FTP клиент.

Можете също така да изтеглите файла Bundle за всеки сертификат, като следвате инструкциите тук.

2. Обединяване на всички сертификати в един файл

Трябва да обедините всички сертификати (вашия_домейн.crt и вашия_домейн.ca-bundle) в един файл с разширение '.crt'.

Сертификатът за вашия домейн трябва да бъде първи във файла, следван от веригата сертификати (CA Bundle).

Отидете в директорията, където сте качили файловете със сертификати. Изпълнете следната команда за обединяване на файловете:

$ cat вашия_домейн.crt вашия_домейн.ca-bundle >> вашия_домейн_chain.crt

Моля, обърнете внимание, че ако файловете са изтеглени от вашия NiceNic акаунт, най-подходящата команда за използване е:

$ cat вашия_домейн.crt > вашия_домейн_chain.crt ; echo >> вашия_домейн_chain.crt ; cat вашия_домейн.ca-bundle >> вашия_домейн_chain.crt

3. Създаване на отделен сървър блок в Nginx или модифициране на съществуващия конфигурационен файл

За да инсталирате SSL сертификат в Nginx, трябва да покажете на сървъра кои файлове да използва, чрез а) създаване на нов конфигурационен файл или б) редактиране на съществуващия.

    а) Като добавите нов конфигурационен файл за уебсайта, можете да сте сигурни, че няма да има проблеми с отделен конфигурационен файл. Освен това, ще бъде по-лесно да се открият и отстранят евентуални проблеми със създадения файл.

Предлагаме да създадете нов конфигурационен файл в тази папка:

/etc/nginx/conf.d

Това може да стане с тази команда:

sudo nano /etc/nginx/conf.d/Your_домейн*-ssl.conf

Където Your_домейн*-ssl.conf е името на новия файл.

След това копирайте и поставете един от долните сървър блокове за порт 443 и редактирайте директориите. Уверете се, че името на сървъра и пътят към webroot съвпадат както във сървърния блок за порт 80, така и в този за порт 443. Ако имате други важни стойности, които трябва да се запазят, добавете ги и в новия сървър блок.
    б) Редактирайте стандартния конфигурационен файл на уеб сървъра, който се казва nginx.conf. Той трябва да се намира в една от тези папки:

/usr/local/nginx/conf

/etc/nginx

/usr/local/etc/nginx

Можете също така да използвате тази команда за намиране:

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

След като го намерите, отворете файла с:

sudo nano nginx.conf

След това копирайте и поставете един от сървърните блокове за порт 443, дадени по-долу, и редактирайте директориите според вашия сървърен блок за порт 80 (със съвпадащо име на сървъра, път към webroot и всички важни стойности). Като алтернатива, можете да копирате сървърния блок за порт 80, после да го поставите по-долу, да промените порта и да добавите необходимите SSL директиви.

Изберете сървърния блок:

По-долу можете да намерите сървър блок за вашата версия на Nginx.

Забележка: За да проверите вашата версия на Nginx, изпълнете тази команда:

sudo nginx -v



Забележка: Заменете стойностите на имената на файлове, като вашия_домейн_chain.crt, в сървърния блок с вашите данни и коригирайте пътищата им с /path/to/.


Сървър блок за Nginx версия 1.14 и по-ниски:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/вашия_домейн_chain.crt;

ssl_certificate_key /path/to/вашия_private.key;

root /path/to/webroot;

server_name вашия_домейн.com;

}

Забележка: Можете да посочите няколко имена на хостове в тази конфигурация, ако е необходимо, например:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/вашия_домейн_chain.crt;

ssl_certificate_key /path/to/вашия_private.key;

root /path/to/webroot;

server_name вашия_домейн.com www.вашия_домейн.your;

}

Сървър блок за Nginx версия 1.15 и по-нови:

server {

listen 443 ssl;

ssl_certificate /path/to/certificate/вашия_домейн_chain.crt;

ssl_certificate_key /path/to/вашия_private.key;

root /path/to/webroot;

server_name вашия_домейн.com;

}

ssl_certificate трябва да сочи към файла с комбинираните сертификати, който сте създали по-рано.
ssl_certificate_key трябва да сочи към частния ключ, който беше генериран с CSR кода.
Ето няколко съвета как да намерите частния ключ в Nginx.

Важно:  За мултидомейн или wildcard сертификат, ще трябва да имате отделен сървър блок за всеки домейн/поддомейн, включен в сертификата. Уверете се, че посочвате съответния домейн/поддомейн заедно с пътищата към същите сертификатни файлове в сървърния блок, както е описано по-горе.

След като добавите съответния сървър блок към файла, запазете редакциите. След това можете да проверите направените промени със следните стъпки.

Изпълнете тази команда, за да проверите синтаксиса на конфигурационния файл:

sudo nginx -t



Ако получите грешки, проверете дали сте следвали указанията правилно. Свържете се с нашия екип за поддръжка, ако имате въпроси.


Ето един съвет: за да намерите логове за грешки при отстраняване на проблеми, просто изпълнете:

sudo nginx -T | grep 'errили_log'

Ако никой от посочените файлове не съществува, файловете са коментирани или ако няма зададени файлове за логовете на грешките, трябва да се провери системния лог по подразбиране:

tail /var/log/nginx/errили.log -n 20

Ако сървърът покаже успешно преминаване на теста, рестартирайте Nginx с тази команда, за да приложите промените:

sudo nginx -s reload

Сега вашият SSL сертификат е инсталиран. Можете да проверите инсталирането тук.

Важни бележки:

Понякога, след инсталиране на SSL файл, който е комбиниран чрез команден ред, може да получите грешка 'Nginx/Apache errили: 0906D066:PEM routines:PEM_read_bio:bad end line'. В този случай може да намерите решение в референтното ръководство.

Друго често срещано проблемно съобщение на този етап е 'Nginx SSL: errили:0B080074:x509 certificate routines: X509_check_private_key:key values mismatch'. Можете да намерите повече подробности за него и възможните решения в тази статия.

4. Конфигуриране на HTTPS пренасочване

Препоръчваме да инсталирате пренасочване от HTTP към HTTPS. Така посетителите на сайта ви ще могат да достъпват само защитената версия на сайта.

За да направите това, трябва да добавите един ред във конфигурационния файл със сървърния блок за порт 80.

Съвети:

Можете да използвате една от следните команди, за да намерите конфигурационните файлове, които са активни в момента:

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

sudo nginx -T | grep -iw "include"

Път към конфигурационния файл по подразбиране са:

в RHEL базирани Linux ОС: /etc/nginx/conf.d/default.conf

в Debian базирани Linux ОС: /etc/nginx/sites-enabled/default

Можете да отворите файловете, за да видите кой съдържа необходимия сървър блок. За това изпълнете:

sudo nano name_of_the_file

След като намерите файла със сървърния блок за порт 80 (дефолтният HTTP порт), добавете следния ред:

return 301 https://$server_name$request_uri;

Забележка: Горното правило за пренасочване трябва да се въведе като последен ред в сървърния блок.

  • return е основната директива, която се използва.
  • 301 е постоянен статус за пренасочване (302 е временен).
  • https е конкретен тип схема (използва се изрично, вместо променливата $scheme).
  • $server_name променливата ще използва домейна, посочен в директивата server_name.
  • $request_uri променливата се използва, за да съвпада пътя към заявените страници/части от сайта (всичко след домейна).
Ето примери за сървърни блокове с HTTPS пренасочване:

Постоянно пренасочване към HTTPS

server {

listen 80;

server_name вашия_домейн.com www.вашия_домейн.your;

return 301 https://$server_name$request_uri;

}

Постоянно пренасочване към HTTPS без www

server {

listen 80;

server_name вашия_домейн.com www.вашия_домейн.your;

return 301 https://вашия_домейн.com$request_uri;

}

Постоянно пренасочване към HTTPS с www

server {

listen 80;

server_name вашия_домейн.com www.вашия_домейн.your;

return 301 https://www.вашия_домейн.your$request_uri;

}

Временно пренасочване към HTTPS без www

server {

listen 80;

server_name вашия_домейн.com www.вашия_домейн.your;

return 302 https://вашия_домейн.com$request_uri;

}

Можете да намерите повече подробности за опциите за пренасочване в Nginx тук.
Имате нужда от помощ? Винаги сме насреща. Отворете билет за поддръжка
Авторски права © 2006-2026 NICENIC INTERNATIONAL GROUP CO., LIMITED Всички права запазени