Rumah > Operasi dan penyelenggaraan > Nginx > Bagaimana untuk mengkonfigurasi akses nama berbilang port dan berbilang domain dalam Nginx

Bagaimana untuk mengkonfigurasi akses nama berbilang port dan berbilang domain dalam Nginx

PHPz
Lepaskan: 2023-05-12 08:43:05
ke hadapan
1953 orang telah melayarinya

Akses berbilang port ke nama domain utama

Tetapkan rekod dalam pelayan nama dns

Tuding ke ip pelayan

untuk membuka port yang diperlukan, ubah suai fail konfigurasi nginx

Sebagai contoh, kami mempunyai dua perkhidmatan dibuka di port 80 dan port 8080 masing-masing

Jika ada iptable, buka port dahulu:

iptables -a input -ptcp --dport 80 -j accept
iptables -a input -ptcp --dport 8080 -j accept
Salin selepas log masuk

Ubah suai fail konfigurasi:

#path: /usr/local/nginx/conf/nginx.conf

server {
listen 80;
server_name www.xxx.com;
access_log /data/www/log/33.33.33.33_nginx.log combined;
index index.html index.htm index.php;
include /usr/local/nginx/conf/rewrite/none.conf;
root /data/www/website/33.33.33.33:80;


location ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  include fastcgi.conf;
  }
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  expires 30d;
  access_log off;
  }
location ~ .*\.(js|css)?$ {
  expires 7d;
  access_log off;
  }
}
server {
listen 8080;
server_name a.xxx.com;
access_log /data/www/log/33.33.33.33:8080_nginx.log combined;
index index.html index.htm index.php;
include /usr/local/nginx/conf/rewrite/none.conf;
root /data/www/website/33.33.33.33:8080;


location ~ [^/]\.php(/|$) {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  include fastcgi.conf;
  }
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  expires 30d;
  access_log off;
  }
location ~ .*\.(js|css)?$ {
  expires 7d;
  access_log off;
  }
}
Salin selepas log masuk

Kuncinya ialah dua konfigurasi segmen pelayan Anda juga boleh membahagikan dua segmen ini kepada dua konfigurasi Fail, letakkannya di bawah direktori

/etc/nginx/conf.d/
Salin selepas log masuk

akses berbilang port nama subdomain

Akses jenis ini adalah bodoh, kerana akses 8080 Port anda memerlukan format http://xxx.com:8080

Dan jika terdapat dua cgi yang berbeza, contohnya, port 80 sepadan dengan web php; perkhidmatan, dan port 8080 sepadan dengan perkhidmatan web nodejs; dan nodejs kami disertakan dengan perkhidmatan web yang sudah mendengar pada port 8080. Apakah yang perlu kami lakukan?

Pada masa ini kita memerlukan fungsi proksi terbalik nginx, dan menambah rekod pada pelayan dns, dan akhirnya mencapai

  • www.xxx.com port akses 80

  • a.xxx.com mengakses perkhidmatan port 8080 melalui pemajuan nginx

Tambah rekod

Tuding a.xxx.com ke ip pelayan

templat konfigurasi nginx adalah seperti berikut:

#path: /usr/local/nginx/conf/nginx.conf

server {
  listen 80;
  server_name www.xxx.com;
  access_log /data/www/log/33.33.33.33_nginx.log combined;
  index index.html index.htm index.php;
  include /usr/local/nginx/conf/rewrite/none.conf;
  root /data/www/website/33.33.33.33:80;


  location ~ [^/]\.php(/|$) {
    fastcgi_pass unix:/dev/shm/php-cgi.sock;
    fastcgi_index index.php;
    include fastcgi.conf;
    }
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
    expires 30d;
    access_log off;
    }
  location ~ .*\.(js|css)?$ {
    expires 7d;
    access_log off;
    }
}

server {
  listen 80;
  listen [::]:80;

  server_name a.xxx.com;

  proxy_connect_timeout 300s;
  proxy_send_timeout 300s;
  proxy_read_timeout 300s;
  fastcgi_send_timeout 300s;
  fastcgi_read_timeout 300s;

  location / {
    proxy_pass  http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header upgrade $http_upgrade;
    proxy_set_header connection 'upgrade';
    proxy_set_header host $host;
    proxy_cache_bypass $http_upgrade;
    try_files $uri $uri/ =404;
  }
}
Salin selepas log masuk

nginx memuat semula fail konfigurasi

rreeee

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi akses nama berbilang port dan berbilang domain dalam Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Isu terkini
Masalah default.conf Nginx
daripada 1970-01-01 08:00:00
0
0
0
pelayan - Masalah aplikasi web konfigurasi Nginx
daripada 1970-01-01 08:00:00
0
0
0
mengimbangi beban nginx
daripada 1970-01-01 08:00:00
0
0
0
centos7 - Pengecualian NGINX berlaku
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan