Reverse-proxy tushunchasi, Nginx o'rnatish, server va location bloklari, proxy_pass, X-Forwarded-*, upstream, nginx -t
11-sinfProfessional IT development6-hafta · 18-darsNima va nega
proxy_pass
nginx -t
SSH kalitida serverga qaysi kalit qo'yiladi?
.pub) kalit authorized_keys ga qo'yiladi.Nima va nega
sudo apt update && sudo apt install -y nginx
sudo systemctl enable --now nginx
sudo systemctl status nginx
ss -lntp | grep ':80 '
enable --now Nginx ni hozir ishga tushiradi va server qayta yonganda ham avtomatik yoqadi.Reverse-proxy nima qiladi?
proxy_pass
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Host $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;
}
}
proxy_read_timeout 60s; va Connection "" ham bor. example.com o'rniga o'z domeningizni yozing.Qaysi direktiva so'rovni ilovaga uzatadi?
proxy_pass orqa manzilni ko'rsatadi.nginx -t
sudo ln -s /etc/nginx/sites-available/app.conf /etc/nginx/sites-enabled/app.conf
sudo nginx -t && sudo systemctl reload nginx
curl -I http://example.com
# upstream bloki:
# upstream app_upstream {
# server 127.0.0.1:3001;
# server 127.0.0.1:3002;
# }
nginx -t && systemctl reload nginx — xavfsiz juftlik: xato bo'lsa reload bajarilmaydi. HTTPS (Certbot) va yo'naltirish 19-darsda.Konfiguratsiyani qo'llashdan oldin nima qilinadi?
Reverse-proxy xavfsizlik va tezlik beradi.
Mijoz so'rovini ichki ilovaga uzatuvchi vositachi
So'rovni qaysi manzilga uzatish
Orqa ilovalar guruhi
Asl mijoz IP si sarlavhasi
127.0.0.1:3000 da ishlasin.
server va location.
nginx -t, reload, curl.
| Direktiva | Vazifa | Misol |
|---|---|---|
listen | port | 80 |
server_name | domen | example.com |
location | yo'l bo'yicha qoida | location / |
proxy_pass | orqa manzil | http://127.0.0.1:3000 |
proxy_set_header | sarlavha berish | Host $host |
Pastga bosing: direktivalar
python3 -m http.server 3000 bilan test ilovani ishga tushiring.sites-available/app.conf ni yozing va symlink qiling.sudo nginx -t, reload, so'ng curl -I http://localhost bilan tekshiring.
sudo systemctl reload nginx
sudo nginx -t && sudo systemctl reload nginx
Nginx — ilova oldidagi eshik.
example.com so'rovlarini 127.0.0.1:3000 ga uzating.Ilova yopiq, Nginx 80/443 da.
server, location, proxy_pass, sarlavhalar.
nginx -t va reload; upstream.
Uyga vazifa: Nginx reverse-proxy konfiguratsiyasi.
HTTPS, Certbot, port forwarding
7-hafta · 19-dars