Sådan ændres Nginx Port i Linux


Nginx er en open source stabil server, der driver nogle af de mest trafikwebsteder på internettet i dag. Blandt webtjenester kan Nginx-webserver med succes implementeres som en load-balancer, web reverse proxy eller som en POP- og IMAP-proxyserver.

Som standard lytter Nginx HTTP-server efter indgående forbindelse og binder på port 80, som repræsenterer standardwebporten. TLS-konfigurationen, som ikke er aktiveret som standard i Nginx, lytter imidlertid til sikre forbindelser på port 443.

For at få Nginx HTTP-server til at lytte efter indgående webforbindelser på andre ikke-standardporte, er vi nødt til at redigere hovedkonfigurationsfilen og ændre eller tilføje en ny erklæring for at afspejle denne kendsgerning.

I Ubuntu og Debian-baseret system er vi nødt til at ændre/etc/nginx/sites-enabled/standardfilen og på RHEL- og CentOS-baserede distributioner rediger /etc/nginx/nginx.conf-filen.

Til at begynde med skal du åbne Nginx-konfigurationsfilen med en teksteditor og ændre portnummeret som vist i nedenstående uddrag.

# vi /etc/nginx/sites-enabled/default  [On Debian/Ubuntu]
# vi /etc/nginx/nginx.conf             [On CentOS/RHEL]

I dette uddrag konfigurerer vi Nginx HTTP-serveren til at lytte efter indgående forbindelser på port 3200. Søg efter linjen, der begynder med listen -erklæring i serverdirektivet, og skift porten fra 80 til 3200, som illustreret i nedenstående billede.

listen 3200 default_server;

Efter ændring af Nginx-portudtalelse skal du genstarte webserveren for at binde den nye port til Debian-baserede Linux-distributioner. Bekræft lokale netværkstabeller med netstat eller ss-kommando. Port 3200 skal vises i din server lokale netværks tabel.

# systemctl restart nginx
# netstat -tlpn| grep nginx
# ss -tlpn| grep nginx

I CentOS- eller RHEL-baseret Linux-distribution skal du installere policycoreutils-pakken og tilføje nedenstående regler, der kræves af SELinux for at Nginx skal binde til den nye port.

# yum install policycoreutils
# semanage port -a -t http_port_t -p tcp 3200
# semanage port -m -t http_port_t -p tcp 3200

Genstart endelig Nginx HTTP-server for at anvende ændringer.

# systemctl restart nginx.service 

Kontroller netværksborde lyttestik.

# netstat -tlpn| grep nginx
# ss -tlpn| grep nginx

For at kontrollere, om webserveren kan fås fra computere i dit netværk, skal du åbne en browser og navigere til serverens IP-adresse eller domænenavn på port 3200. Du bør se Nginx standardwebside som illustreret i nedenstående skærmbillede.

http://sever.ip:3200 

Men hvis du ikke kan gennemse Nginx-websiden, skal du vende tilbage til serverkonsollen og kontrollere firewallreglerne for at tillade indgående trafik på port 3200/tcp.