sudo yum install -y nginx
sudo systemctl enable --now nginx
Создай новый конфиг
vi /etc/nginx/conf.d/wikijs.conf
server {
listen 80;
server_name wiki.example.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Где
server_name - твой основной домен\адрес куда будет идти перенаправление
proxy_pass - твой сервис и порт откуда будет идти перенаправление
Перезагрузить nginx:
sudo nginx -t && sudo systemctl reload nginx
sudo yum install -y certbot python3-certbot-nginx
sudo certbot --nginx -d wiki.example.com #здесь адрес сайта, который указан в конфиге nginx `server_name`
Добавь в cron задачу
crontab e
Выполнять каждый первый день месяца
0 0 1 * * /usr/bin/certbot renew > /dev/null 2>&1
Check cron logs
sudo journalctl | grep CRON
Check all certs
sudo certbot certificates
sudo vi /etc/nginx/nginx.conf
Можно установить в блоке http (применяется глобально ко всем сайтам)
http {
client_max_body_size 500M; # Размер в мегабайтах
# ... другие директивы ...
}
Check and restart
sudo nginx -t
sudo systemctl reload nginx
Create new config in /etc/nginx/conf.d/
server {
server_name parser.zenw.net;
location / {
proxy_pass http://ip:3000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
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-Proto $scheme;
}
location /assets/ {
proxy_pass http://ip:3000/assets/;
proxy_set_header Host $host;
# Для статики можно добавить заголовки кэширования, но это не обязательно.
expires 1y;
add_header Cache-Control "public, immutable";
}
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/zenw.net/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/zenw.net/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
server {
if ($host = parser.zenw.net) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name parser.zenw.net;
location / {
return 301 https://$server_name$request_uri;
}
}
add new DNS values

Create new certs
Остановите Nginx (чтобы освободить порты для проверки домена, если используете HTTP-валидацию):
sudo systemctl stop nginx
Выполните команду для расширения сертификата:
sudo certbot --nginx -d zenw.net -d parser.zenw.net -d ваш-второй-поддомен.zenw.net --expand
--nginx: автоматически обновит конфигурацию Nginx.
-d ...: перечислите через пробел все домены, которые должны быть в сертификате, включая уже существующие .
--expand: ключевой параметр, который говорит Certbot расширить существующий сертификат новыми доменами, а не создавать новый .
Запустите Nginx заново:
sudo systemctl start nginx
sudo certbot certificates