Тут достаточно долго обьяснять, но все же.
1)
https://nginx.org/ смотрим последнюю версию nginx
2) в консоли переходим в какую-то директорию
cd /home
3) выполняем скачивание и разархивацию скачанного nginx
wget http://nginx.org/download/nginx-1.19.7.tar.gz
tar -zxvf nginx-1.19.7.tar.gz && cd nginx-1.19.7
Можно посмотреть справку по configure и включить только то, что нужно в нашу сборку
./configure -help |less
# Ошибки могущие возникнуть в процессе сборки.
--------------------------------------------------------------------------------
./configure: error: the HTTP rewrite module requires the PCRE library.
apt-get install -y libpcre++-dev
--------------------------------------------------------------------------------
./configure: error: SSL modules require the OpenSSL library.
apt-get install -y libssl-dev
4) далее мы можем собрать необходимые модули
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --user=nginx --group=nginx --without-http_autoindex_module --without-http_ssi_module --without-http_scgi_module --without-http_uwsgi_module --without-http_geo_module --without-http_split_clients_module --without-http_memcached_module --without-http_empty_gif_module --without-http_browser_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_mp4_module --with-http_auth_request_module --with-http_stub_status_module --with-http_random_index_module --with-http_gunzip_module --with-threads --with-http_perl_module
Должны увидеть что-то в таком формате
Если сыпятся ошибки, читайте, все предусмотреть невозможно, значит не достает какой-либо Ubuntu библиотеки
5) В п.4 мы создали Makefile и указали суммарную конфигурацию, далее можно переходить к установке
make && make install
ВАЖНО!!!
Если у Вас уже установлен Nginx удалите его, скопировав предварительно содержимое папок с конфигами сайтов, сертификатов и прочего
sudo apt-get remove nginx*
sudo apt-get purge nginx*
Для одной из неизвестных причин установите доп. библиотеку
sudo apt-get install build-essential libgl1-mesa-dev
sudo apt-get install libgl-dev libglu-dev
sudo apt-get install libperl-dev
После должно быть что-то такого
6) Создаем каталоги необходимые для работы сервера.
mkdir /var/cache/nginx && mkdir /etc/nginx/conf/ && mkdir /etc/nginx/sites-enabled/ && mkdir /etc/nginx/sites-available/ && mkdir /etc/nginx/common/
7) Выполним последние команды. Символическая ссылка и пользователю nginx, зададим командную оболочку /usr/sbin/nologin
useradd -s /usr/sbin/nologin nginx
ln -s /usr/sbin/nginx /bin/nginx
8) Добавляем службу nginx.service в автозагрузку и запускаем.
systemctl enable nginx.service
systemctl start nginx.service
9) FINAL!
проверьте как работает Ваш Nginx
systemctl status nginx
nginx -v