解决nginx访问动态接口报错404Not Found问题

9 篇文章 0 订阅
订阅专栏
在部署使用AntDesignVue和JFinal框架的招聘背调系统时,遇到外部访问报404错误。经过排查,问题定位为nginx代理配置错误。通过测试项目内部接口确认接口正常,然后检查nginx配置,发现配置文件中缺少斜杠。删除多余nginx实例并重新安装配置后,问题得以解决。最终成功实现通过nginx代理访问动态接口。
摘要由CSDN通过智能技术生成

问题描述

计设做了一套招聘背调系统,前后端分别使用了Ant Design Vue与JFinal框架。想要将项目部署到服务器上,但是外部访问一直报错404Not Found
在这里插入图片描述

解决思路

把错误定位为:找不到动态接口,但是不知道是项目中出现了问题,还是经nginx代理后出现了问题。
因此要分别测试 项目本身的接口 和 nginx代理后的接口。

首先测试项目内接口:

在ubuntu端输入命令:curl http://localhost:port/xxx/xxx

这里我的接口是: curl http://localhost:20294/sys/login

运行结果:
在这里插入图片描述
说明我的项目内接口是没有问题的。

再测试nginx代理后的接口:

再ubuntu中输入命令

curl http://localhost:8080/api/user/login

运行结果:
在这里插入图片描述
这里提示找不到接口了,说明问题出在代理服务器nginx上,所以我们要去修改nginx的配置文件。

按照其他博客的建议,我将nginx配置中这个地方加上了斜杠
在这里插入图片描述
重启服务器后,还是不行。

彻底解决

在当我不知道怎么办的时候,我突然发现我的服务器中,有两个nginx·····
我在想是不是因为有两个nginx,修改的配置文件不是我启动的那个nginx。于是我把所有nginx配置文件都替换成我原始的配置文件,再重启。还是不行

担心是两个nginx的问题,我把服务器中的所有nginx删除了。删除步骤(依次运行下面的步骤):

ps aux|grep nginx  #查看nginx进程
kill -9 进程号      #杀死上一步中查询到的nginx(进程号在第二列)
find / -name nginx #找到nginx的文件地址
rm -rf xxx         #删除nginx所有文件

最后用weget安装新的nginx,然后按照原本安装步骤进行安装,修改配置文件后,再运行curl访问动态接口,突然就可以了!

下面贴出我的nginx配置文件:

user root;
#user  nobody;
worker_processes  4;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    server_names_hash_bucket_size 128;
    client_header_buffer_size 32k;
    underscores_in_headers on;
    large_client_header_buffers 4 32k;
    client_max_body_size 50m;
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nopush          on;
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout    300;
    fastcgi_read_timeout    300;
    fastcgi_buffer_size     64k;
    fastcgi_buffers     4   64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 256k;
    tcp_nodelay         on;

    #gzip  on;


    ######################################################
    #############     麻雀配置地址    ###########
    ######################################################
    server {
        listen       8080;
        server_name  somename;

        location /api/ {
            proxy_pass http://0.0.0.0:20294/; #映射到本地端口。
            proxy_redirect off;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size 200m;
            proxy_connect_timeout 600;
            proxy_read_timeout 600;
        }
        
        location / {
            root /root/project-template/config/static;
            try_files $uri $uri/ @router;
            index index.html;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size 200m;
            proxy_connect_timeout 600;
            proxy_read_timeout 600;
        }

        location @router {
            rewrite ^.*$ /index.html last;
        }
    }
}

需要注意的是:配置动态访问api的时候,记得在最后加上斜杠

在这里插入图片描述

至此,问题完美解决。

如何完美解决 Nginx出现 404 Not Found nginx/1.23.4 解决方案
猫头虎:授渔优于赠鱼,兴趣引领智慧,探索之乐尤显珍贵。商务合作:Libin9iOak,共赴知识与乐趣的探索之旅!
05-21 9867
Nginx配置过程中,404 Not Found错误是一个常见问题。本文将详细解析Nginx 404 Not Found的原因及解决方案,确保您能够轻松解决这一问题。通过本篇文章,您将了解Nginx配置的细节,掌握快速定位和修复404错误的方法,提升服务器的稳定性和用户体验。问题类型解决方法配置文件错误检查Nginx配置文件,确保路径正确权限问题检查并修改文件权限符号链接问题确保符号链接目标存在且有权限文件不存在创建请求的文件或修改配置指向正确的文件。
Nginx如何优化404报错页面.doc
07-21
1、源码安装nginx 2、编译安装 3、启动服务 4、访问一个不存在的页面默认会出现404 Not Found
nginx配置解决访问路由404 Not Found
最新发布
云散的博客
06-18 519
杀掉 nginx 进程。重新启动 nginx
nginx 报错: 404 not found
热门推荐
行者有疆哉
05-22 4万+
nginx 404 Not Found
解决Nginx 404 not found
蹦哒哒的王小哲
05-11 4万+
简述 昨天网站还正常运营,今天突然发现网站打不开了,首页正常打开,其他栏目全部都404 not found,注意,我的问题是,昨天还正常运行,突然就不可以了,小伙伴们注意了,如果跟我的问题不一样,此篇博文就没有任何参考意义。
利用阿里云服务器(CentOS7.8 64位)建站时报404 Not Found nginx解决办法以及Nginx(1.20.1)的安装及配置全过程
Darren洋的博客
05-03 6181
这几天在利用阿里云服务器部署自建小网站项目时,发现这个问题404 Not Found nginx。经过检查后发现是因为Nginx在云服务器上还没安装上。现准备好以后解决办法供有需要的小伙伴们参考。
使用nginx搭建的文件服务器一直提示 404 Not Found ,是文件不存在还是没有权限?
abcd1f2的专栏
03-20 2520
使用nginx搭建的文件服务器一直提示 404 Not Found ,是文件不存在还是没有权限?
Nginx 访问静态资源报错404 Not Found 的问题解决过程
hfdgjjg的博客
01-31 4994
Nginx 访问静态资源报错404 Not Found 的问题解决过程
nginx配置引发的403问题解决办法
09-30
2. **404错误的误导**:尝试访问`/usr/local/nginx/html1/a.txt`时,错误代码变成了404 Not Found。这看起来矛盾,但实际上,这是因为虽然`www.requesturi.com`的配置不存在,但Nginx默认使用了`www.zhuye.com`的...
Nginx中定义404页面并且返回404状态码的正确方法
09-30
当用户尝试访问不存在的资源时,服务器应返回404 Not Found状态码,以便客户端(如JavaScript的jQuery AJAX)能够识别并采取相应的错误处理措施。然而,如果配置不当,Nginx可能会返回自定义404页面,但状态码仍然是...
Nginx自定义404,502错误页面的方法
09-30
当用户访问的页面不存在(404 Not Found)或服务器出现错误(如502 Bad Gateway)时,自定义的错误页面可以提供更有帮助的信息,减少用户的困惑。以下是如何为Nginx自定义404和502错误页面的详细步骤: 1. **开启...
php安装扩展mysqli的实现步骤及报错解决办法
10-19
no`,但随后显示`mysql_config not found`的错误,说明系统无法找到MySQL配置文件`mysql_config`。此时需要指定`mysql_config`的路径,如下: ``` # ./configure --with-...
访问nginx报错404 Not Found nginx/1.24.0
m0_69057918的博客
12-04 1920
访问nginx报错404 Not Found nginx/1.24.0解决方案
nginx下面完美配置解决404 file not found(让nginx支持PATHINFO路由模式)
sun_96216的专栏
03-06 1万+
老朱亲自写的,最完美Nginx 配置文件 server { listen 80; server_name _;#xxxx.com; if ($host ~ "\d+\.\d+\.\d+\.\d") { return 404;#禁IP访问 } root /var/www; index index.html index...
nginx404
qq_40907977的博客
11-04 1万+
问题nginx添加项目之后,报404
(最简单详细)关于nginx配置解决页面刷新以后404 Not Found和403 Forbidden
大雾起了清晨
06-19 1万+
(最简单详细)关于nginx配置解决页面刷新以后404 Not Found和403 Forbidden
Nginx出现403 Forbidden、404 Not Found错误的解决方案
完颜振江
04-22 1823
🤔 与 Nginx 错误的永恒斗争!请记住在排除错误时始终检查 Nginx 日志,因为它们通常会提供有关问题的宝贵信息。
nginx 配置 File not found 错误 404
fareast_mzh的博客
12-19 3760
https://blog.csdn.net/weiwangchao_/article/details/76039480 * 安装pcre 链接: https://pan.baidu.com/s/1z0VShe7WRfQp64-zWeQ-rg 提取码: vm44 复制这段内容后打开百度网盘手机App,操作更方便哦 * 安装nginx http://tengine.taobao.org/dow...
404 not found nginx
07-27
根据引用\[1\]和引用\[2\]的内容,你遇到的问题是在部署自建小网站项目时出现了404 Not Found nginx的错误。经过检查,发现是因为Nginx在云服务器上还没有安装。解决办法是先安装Nginx,并确保配置文件正确。你可以参考引用\[2\]中提供的解决办法来安装Nginx和进行域名解析及备案。另外,根据引用\[3\]的内容,你尝试删除了服务器中的所有Nginx文件,但问题仍然存在。可能需要进一步检查和排除其他可能的原因,比如确保Nginx进程已经被完全杀死,并且删除了所有相关的文件。 #### 引用[.reference_title] - *1* *3* [解决nginx访问动态接口报错404Not Found问题](https://blog.csdn.net/RRie1/article/details/115691709)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [利用阿里云服务器(CentOS7.8 64位)建站时报404 Not Found nginx解决办法以及Nginx(1.20.1)的安装及配置全...](https://blog.csdn.net/qq_63010259/article/details/130462952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
写文章

热门文章

  • 解决nginx访问动态接口报错404Not Found问题 31459
  • IDEA启动Web项目服务器未能找到目标资源 15820
  • 【D3.js实战】Force Simulation 力导图制作 5610
  • Sublime Text3——高效,美观,强大 5401
  • Ubuntu20.04 oh-my-zsh的使用及安装第三方插件 4860

分类专栏

  • 前端学习 4篇
  • 数据可视化 14篇
  • Note 9篇
  • 机器学习学习笔记 6篇
  • Java 6篇
  • 区块链 1篇
  • ubuntu 2篇
  • 工具推荐 1篇

最新评论

  • 【趟坑记录】d3.zoom()的正确使用姿势 @d3.v7

    可到了这个时候还是一样: 但是在缩放图后,再次平移时会有一次卡顿,请问你解决了吗

  • tomcat找不到静态资源css,js,img的解决方案

    HRainCat: 感谢博主提醒,大佬喝茶

  • IDEA启动Web项目服务器未能找到目标资源

    木小规: 牛的牛的,感谢大哥,磨了几天愣是访问不到资源

  • 【D3.js实战】 品牌排名动态可视化

    zqqcee: 可以去d3.js的官网去下

  • 【D3.js实战】 品牌排名动态可视化

    猫咪爬上月亮: 我没用d3.min.js那个文件,这咋整,下载链接我也不知道

大家在看

  • 深度优化Nginx负载均衡策略,携手Keepalived打造高可用服务架构新纪元 2559
  • 3个专业卖网站模板的网站 109
  • KEEPALIVED高可用集群原理及实例 1230
  • C语言结构体内存对齐 2375
  • 设计模式 门面模式 32

最新文章

  • 【趟坑记录】d3.zoom()的正确使用姿势 @d3.v7
  • 如何使用hexo next主题,新建一个专栏
  • Pull Request完整过程【记一次给antvis:G6的PR】
2023年4篇
2022年2篇
2021年22篇
2020年11篇

目录

目录

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

PHP网站源码爱联seo优化东莞百度seo福永网站推广方案同乐网站优化按天计费南山建设网站塘坑标王宝安SEO按效果付费沙井网站开发塘坑SEO按天收费横岗百度爱采购东莞如何制作网站永湖网站优化推广荷坳网站设计沙井关键词按天计费大运网页设计惠州网站优化南山百搜词包丹竹头百度网站优化罗湖外贸网站制作布吉设计网站吉祥网站改版观澜阿里店铺运营观澜网站排名优化塘坑百度竞价包年推广龙岗网站改版光明建站深圳百度关键词包年推广大鹏seo优化罗湖阿里店铺运营荷坳网站seo优化歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化