Menggunakan Nginx menulis ulang untuk mengubah URL yang ditampilkan dari IP?

0

Saya tidak dapat menemukan info tentang ini jadi saya tidak tahu apakah itu mungkin, tetapi saya bertanya-tanya: Dapatkah saya menggunakan modul penulisan ulang NGINX untuk mengubah URL yang ditampilkan, misalnya 123.123.123.123:6000/some/path, ke sesuatu seperti my.domain.com/some/path?

Caranya sekarang, saya memiliki subdomain terdaftar untuk server ini, di mana domainFactory hanya memiliki redirect ke server ini.

Mungkin saya harus melakukan pendekatan yang berbeda?

Nico Weiss
sumber
Saya memperbaikinya dengan mengatur DNS saya dengan benar. Dalam retrospeksi, apa yang saya coba lakukan agak bodoh. Noobs di kantor, maaf karena membuang-buang waktu kalian.
Nico Weiss

Jawaban:

0

Saya melihat dua cara potensial untuk menafsirkan pertanyaan Anda:

1) Anda bisa berarti pengalihan alih-alih "menulis ulang" (istilah server web). Anda ingin menunjukkan domain, bukan IP ke klien. Itu pengalihan.

server {
    listen 123.123.123.123:6000;

    return 301 https://my.domain.com$request_uri;
}

2) Anda bisa berarti lalu lintas dari sana pergi ke server backend tertentu. Sekali lagi, saya tidak berpikir Anda bermaksud menulis ulang.

server {
    listen 123.123.123.123:6000;

    location / {
        proxy_pass http://my.domain.com;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }
}

Agar lebih lengkap, mungkin Anda sudah memiliki konten untuk / dan Anda hanya ingin beberapa / jalur dilayani oleh server lain:

server {
    listen 123.123.123.123:6000;

    location ~ /some/path {
        proxy_pass http://my.domain.com;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }

    location / {
        proxy_pass http://123.123.123.123:80;
        proxy_http_version 1.1;
        proxy_set_header Connection "Keep-Alive";
        proxy_set_header Proxy-Connection "Keep-Alive";
    }
}

Yang terakhir ini adalah teknik umum untuk mengekspos beberapa sistem layanan mikro sebagai satu, sehingga menyatukan domain dan menyederhanakan SSL. Dalam kasus saya, saya sering memetakan apa pun dengan _ ke cluster Elasticsearch saya.

David Betz
sumber
Saya telah memperbaiki masalah saya dengan memperbaiki entri DNS saya, apa yang saya coba lakukan pada dasarnya hanya membiarkan browser menampilkan string lain, bukan IP.
Nico Weiss
Itu akan menjadi server_namebaris di Nginx (cocok dengan nama bukan IP). Anda dapat menggunakan Nginx untuk mengatasi banyak masalah dengan sistem yang mendasarinya. Itu sangat keren.
David Betz