• %user%
logotype
SysOps
  • Главная
  • Новости
  • О проекте
  • Контакты
  • Статистика
  • Сервисы
    • My IP Address
    • IP Calculator
    • WHOIS Client
    • Speedtest
    • Crontab
    • NGINXConfig
    • Composerize

  • RHEL
  • Ubuntu
  • TCP/IP
  • DNS
  • Containers
  • Cloud
  • Ansible
  • NGINX
  • LAMP
  • LEMP
  • SQL
  • Zabbix
  • Netfilter
  • MikroTik

Установка веб сервера NGINX в CentOS 8 / RHEL 8


NGINX — это один из самых популярных в мире веб-серверов, который обеспечивает работу крупнейших сайтов в Интернете с огромным трафиком. Обычно он использует ресурсы эффективнее, чем Apache, и может использоваться как веб-сервер для статического контента или как обратный прокси-сервер.

#!/bin/bash

echo "Update the package lists..."
dnf check-update

echo "Install the prerequisites..."
dnf install dnf-utils -y

echo "Adding nginx official repos..."
cat <<'EOT' > /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOT

echo "Install nginx stable release from official repo..."
dnf install nginx -y

echo "Renaming nginx.conf to nginx.conf.bak"
mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak

echo "Creating new nginx.conf..."
cat <<'EOT' > /etc/nginx/nginx.conf
user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections 1024;
    use epoll;
    multi_accept on;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    server_names_hash_bucket_size 64;
    server_tokens off;
    #gzip  on;

    server {
        listen       0.0.0.0:80 default_server;
        server_name  localhost;
        root	     /usr/share/nginx/html;

        location / {
            deny all;
        }

        error_page 404 /404.html;
    	    location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
    	    location = /50x.html {
        }
    }    

    include /etc/nginx/conf.d/*.conf;
}
EOT

echo "Enable and start nginx.service"
systemctl enable --now nginx

echo "Opening http and https ports..."
firewall-cmd --zone=public --add-port=80/tcp
firewall-cmd --zone=public --add-port=443/tcp
firewall-cmd --runtime-to-permanent
firewall-cmd --reload

Скачать файл: nginx-rhel-setup.sh [2.16 Kb] (cкачиваний: 15)

  • Комментарии
  • О статье
  • Похожие новости
У данной публикации нет комментариев.

sobir

Автор

27-07-2020, 13:47

Дата публикации

RHEL / Nginx

Категория
  • Комментариев: 0
  • Просмотров: 497
RHEL / Nginx / LAMP Stack / LEMP Stack
Настройка полноценного веб сервера NGINX + Apache + FPM в CentOS 8 / RHEL 8
Cloud / Nginx
Запрещаем веб трафик на origins, кроме Cloudflare IPs
RHEL / Nginx
Настройка виртуальных хостов NGINX в CentOS / RHEL
Containers
Разворачиваем NGINX в Docker
RHEL / Nginx
Настройка обратного прокси сервера NGINX с SSL-терминацией в CentOS 8 / RHEL 8
Containers
Настраиваем GitLab Container Registry
Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Комментарии

Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда следующие строки: 

proxy_set_header Host $http_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;

после просто подключить в конфиге nginx: 

proxy_pass https://your_backend;

include proxy_params;

на Ubuntu такой файл уже существует можно просто подключить 

8 сентября 2022 18:23

komronu

Можно ещё так:

1. Создаем отдельную сеть для наших контейнеров

docker network create zbx-net

2. Указываем сеть по умолчанию в docker-compose.yml

networks:
  default:
    name: zbx-net
    external: true

26 августа 2022 10:43

sobir

Спасибо за отзыв, написал отдельную статью по установке и настройке Ansible

22 августа 2022 15:12

komronu

Думаю в статье необходимо также описать процесс установки Ansible.
19 августа 2022 18:00

sobir

Принудительное обновление сертификата:

certbot certonly --force-renew -d newsite.com
17 октября 2021 11:40

sobir

Какой дистрибутив Linux вы часто используете?
Подпишись на канал
Выбрать дизайн сайта
1 посетитель на сайте. Из них:
Гости1
© 2020 SysOps Яндекс.Метрика

Авторизация

Регистрация Забыли пароль?