专业的建网站的公司,杭州网站制作工作室,福永做网站的公司,wordpress去掉分类归档在我们的前后端开发过程中#xff0c;如果前端页面在请求后台服务器的时候#xff0c;在url中都会存在/api这个请求前缀#xff0c;但是我们的后台服务接口中却没有/api的路径#xff0c;那么在不修改服务端代码的情况下#xff0c;我们可以通过nginx来轻松解决这个问题。…在我们的前后端开发过程中如果前端页面在请求后台服务器的时候在url中都会存在/api这个请求前缀但是我们的后台服务接口中却没有/api的路径那么在不修改服务端代码的情况下我们可以通过nginx来轻松解决这个问题。 前端请求路径为http://192.168.xxx.xxx:8080/api/users/1725808854490013697实际上后端只存在的接口为http://192.168.xxx.xxx:8080/users/1725808854490013697那么这种情况下代码不经过修改的前提下前端是无法正常访问后端接口为了实现上面的需求我们可以通过nginx进行路径的重写然后再转发到服务器 我们需要在nginx的nginx.conf的配置文件中添加以下反向代理的配置即可实现当前功能 location ^~ /api/ {# 路径重写rewrite ^/api/(.*)$ /$1 break;# 反向代理配置将请求转发到指定的服务proxy_pass http://192.168.xxx.xxx:8080;} 指令的详细说明 location ^~ /api/ ^~表示普通字符串匹配上以后不再进行正则匹配 以/api/开头的请求都会匹配上 rewrite ^/api/(.*)$ /$1 break; rewrite路径重写 这里写的是一个正则表达式代表如果请求路径是以/api/开头后面的请求路径任意此时将原始的url路径重写为/$1这里的$1指代的就是通配符 .* 这一块的内容。比如 /api/users/1725808854490013697 ------- ^/api/(.*)$ -------- 此时 (.*) 匹配的就是 users/1725808854490013697 ------ 最终重写为/$1 即 /users/1725808854490013697 proxy_pass http://192.168.xxx.xxx:8080; proxy_pass反向代理 路径重写后的请求将会转发到后端的http://192.168.xxx.xxx:8080服务器