NGINX

Nginx 1.28.3

NGINX

Ubuntu 26.04 LTS

sudo apt install nginx
nginx -v
sudo systemctl enable/disable nginx
sudo systemctl start/stop/restart/status/reload nginx

Multiple Domains Setup

sudo vim /etc/nginx/sites-available/example1.com
server {
    listen 80;
    listen [::]:80;

    server_name example1.com www.example1.com;

    root /var/www/example1;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

sudo ln -s /etc/nginx/sites-available/example1.com /etc/nginx/sites-enabled/example1.com
sudo nginx -t
sudo systemctl reload nginx

Gzip Setup

sudo vim /etc/nginx/nginx.conf
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_comp_level 5;

gzip_types
    text/plain
    text/css
    text/javascript
    application/javascript
    application/json
    application/xml
    application/rss+xml
    image/svg+xml;

sudo nginx -t
sudo systemctl reload nginx

curl -I -H "Accept-Encoding: gzip" http://localhost/
curl -I -H "Accept-Encoding: gzip" http://your-domain.com/

Ubuntu 24.04 LTS

sudo apt update && sudo apt upgrade
sudo apt install nginx
sudo nginx -v

sudo vim /etc/nginx/sites-available/default
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
sudo nginx -t

sudo systemctl enable/disable nginx
sudo systemctl start/stop/restart/status nginx

Ubuntu 22.04 LTS

sudo apt update
sudo apt install nginx
sudo systemctl enable --now nginx
sudo systemctl start/restart/reload/stop/enable/disable nginx
sudo vim /etc/nginx/sites-available/default
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/

FreeBSD 13

# freebsd-update fetch install
# pkg install -y nginx
# sysrc nginx_enable=yes
# service nginx start

# ee /usr/local/etc/nginx/nginx.conf

Centos 7 & 8

sudo dnf install nginx
nginx -v
nginx -V
sudo vim /etc/nginx/nginx.conf
sudo vim /etc/nginx/conf.d/*.conf

nginx -t
sudo vim /var/log/nginx/access.log
sudo vim /var/log/nginx/error.log
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
sudo systemctl start/stop/status/enable/disable nginx
nginx -s stop/quit/reopen/reload
nginx -c filename

Firewall

sudo ufw app list
sudo ufw allow 'Nginx Full'
sudo ufw reload
sudo ufw status

Notes

reload[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)

Then it means nginx or some other process is already using port 80.

You can kill it using:

sudo fuser -k 80/tcp

And then try restarting nginx again:

service nginx start
Licensed under CC BY-NC-SA 4.0
comments powered by Disqus