我的Django + Vue前后端分离的项目,
当我打包上服务后发现我的接口出现了双斜杠,Django无法识别
比如这:种http://host//file_list,双斜杠出现在了中间
本带开发环境和服务器的区别是服务器多了一层nginx代理,罪魁祸首应该发生在Nginx上;
然后去网上查了一些方法,都不管用,最后还是ChatGPT的方法管,这是我最后设置的反向代理(我使用的宝塔面板):location ^~ /django {
location ^~ /django {
rewrite ^/django(/.*)$ $1 break;
proxy_pass http://xxx.xxx.xxx.xxx:7004;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_http_version 1.1;
add_header X-Cache $upstream_cache_status;
# Set Nginx Cache
set $static_fileVaWk1ea6 0;
if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ) {
set $static_fileVaWk1ea6 1;
expires 1m;
}
if ( $static_fileVaWk1ea6 = 0 ) {
add_header Cache-Control no-cache;
}
}
其中重要的就是:rewrite ^/django(/.*)$ $1 break;
如果出现了双鞋该,就改成单斜杠
标签:set,header,xxx,Nginx,反向,proxy,斜杠 From: https://www.cnblogs.com/DingAi/p/18362797