Heim > Artikel > Betrieb und Instandhaltung > Was sind Nginx-Proxy-Axios-Anfragen und Vorsichtsmaßnahmen?
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; } } }
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; }
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/; }
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,请注意这里的双斜杠。 }
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!