Rumah > Artikel > Operasi dan penyelenggaraan > Bagaimana untuk mengkonfigurasi akses nama berbilang port dan berbilang domain dalam Nginx
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
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; } }
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/
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; } }
nginx memuat semula fail konfigurasi
rreeeeAtas 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!