Was sind Nginx-Proxy-Axios-Anfragen und Vorsichtsmaßnahmen?

WBOY
Freigeben: 2023-05-15 17:43:06
nach vorne
1066 Leute haben es durchsucht

1. nginx.conf-Konfigurationsinformationen

Da nginx.conf viele Konfigurationsinformationen enthält, konzentriert sich dieser Artikel nur auf Axios und statische Ressourcenanforderungseinstellungen und erwähnt auch einige allgemeine Konfigurationselemente. Die spezifischen Einstellungen sind wie folgt:

# 设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
 #连接超时时间
 keepalive_timeout 120;
 
 #gzip压缩开关及相关配置
 gzip on;
 gzip_min_length 1k;
 gzip_buffers  4 32k;
 gzip_http_version 1.1;
 gzip_comp_level 2;
 gzip_types  text/plain application/x-javascript text/css application/xml;
 gzip_vary on;
 gzip_disable "msie [1-6].";

 #设定实际的服务器列表 
 upstream zp_server{
 server 127.0.0.1:8089;
 }
 
 #http服务器 
 server {
 #监听80端口
 listen 80
 
 #定义服务名称
 server_name localthost;
 
 #首页
 index index.html
 
 #指向项目根目录
 root d:\project\src\main\webapp;
 
 #编码格式
 charset utf-8;
 
 #代理的路径(和upstream绑定),location 后面设置映射的路径
 location / {
  #代理配置参数
  proxy_connect_timeout 180;
  proxy_send_timeout 180;
  proxy_read_timeout 180;
  proxy_set_header host $host;
  proxy_set_header x-forwarder-for $remote_addr;
  proxy_pass http://zp_server/;
  
  #跨域相关设置
  add_header 'access-control-allow-origin' '*' always;
  add_header 'access-control-allow-credentials' 'true';
  add_header 'access-control-allow-headers' 'origin, x-requested-with, content-type, accept' always;
  }
  
  #配置静态资源 解决js css文件无法加载无法访问的问题,注意末尾不能有 /
  location ~ .*\.(js|css|jpg|png)$ {
  proxy_pass http://zp_server;
  } 
 }
}
Nach dem Login kopieren

2. Das Schrägstrichproblem von Proxy_Pass

Nginx unterteilt Proxy_Pass in zwei Typen:

  • Einer enthält nur die IP- und Portnummer (das / nach dem Port ist ebenfalls enthalten). ) Nein, hier sollte besondere Aufmerksamkeit geschenkt werden), wie zum Beispiel Proxy_Pass http://localhost:8080, diese Methode wird als Methode ohne URI bezeichnet

  • Die andere hat andere Pfade nach der Portnummer, darunter nur einen einzigen / , wie etwa Proxy_Pass http://localhost:8080/, und andere Pfade, wie etwa Proxy_Pass http://localhost:8080/abc.

2.1 Für die Methode ohne URI

Für die Methode ohne URI behält Nginx den Pfadteil am Speicherort bei, z. B.:

location /api1/ {
 proxy_pass http://localhost:8080;
}
Nach dem Login kopieren

Beim Zugriff auf http://localhost/api1/xxx wird Proxy Gehen Sie zu http://localhost:8080/api1/xxx

2.2 Für die URI-Methode

Für die URI-Methode verwendet Nginx Substitutionsmethoden wie Alias, um die URL zu ersetzen, und diese Substitution erfolgt nur wörtliche Ersetzung, zum Beispiel:

location /api2/ {
 proxy_pass http://localhost:8080/;
}
Nach dem Login kopieren

Beim Zugriff auf http://localhost/api2/xxx wird http://localhost/api2/ (beachten Sie das / am Ende) durch http://localhost:8080/ ersetzt, und dann hinzugefügt Der verbleibende xxx wird hochgeladen, sodass er zu http://localhost:8080/xxx wird.

2.3 Zusammenfassung

server {
 listen    80;
 server_name localhost;

 location /api1/ {
  proxy_pass http://localhost:8080;
 }
 # http://localhost/api1/xxx -> http://localhost:8080/api1/xxx


 location /api2/ {
  proxy_pass http://localhost:8080/;
 }
 # http://localhost/api2/xxx -> http://localhost:8080/xxx


 location /api3 {
  proxy_pass http://localhost:8080;
 }
 # http://localhost/api3/xxx -> http://localhost:8080/api3/xxx


 location /api4 {
  proxy_pass http://localhost:8080/;
 }
 # http://localhost/api4/xxx -> http://localhost:8080//xxx,请注意这里的双斜线,好好分析一下。


 location /api5/ {
  proxy_pass http://localhost:8080/haha;
 }
 # http://localhost/api5/xxx -> http://localhost:8080/hahaxxx,请注意这里的haha和xxx之间没有斜杠,分析一下原因。

 location /api6/ {
  proxy_pass http://localhost:8080/haha/;
 }
 # http://localhost/api6/xxx -> http://localhost:8080/haha/xxx

 location /api7 {
  proxy_pass http://localhost:8080/haha;
 }
 # http://localhost/api7/xxx -> http://localhost:8080/haha/xxx

 location /api8 {
  proxy_pass http://localhost:8080/haha/;
 }
 # http://localhost/api8/xxx -> http://localhost:8080/haha//xxx,请注意这里的双斜杠。
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas sind Nginx-Proxy-Axios-Anfragen und Vorsichtsmaßnahmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage