nginx代理springboot存在问题

目的:使用nginx代理两个springboot项目。采用轮询的方式选取一个项目使用。

问题:springboot项目包含jsp页面,且采用了ajax方法实现文件上传,但实际运行中,可以显示页面,但无法显示页面背景,以及无法实现文件上传,请问有何解决办法。

nginx代理配置,后端web容器配置不发盲猜嘛

是不是和nginx的配置有关系 静态资源

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7692924
  • 这篇博客你也可以参考下:nginx访问无法访问动态java项目,访问jsp页面,浏览器弹出下载jsp问题解决
  • 除此之外, 这篇博客: Nginx反向代理解决跨域问题访问后台接口(同一个服务器)+部署springboot项目(前后端分离)中的 三、部署springboot 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 在这里插入图片描述
    双击package即可进行打包,博主设置的是jar
    生成之后如下
    在这里插入图片描述
    然后我们直接将该jar包往服务器上一丢(随便找个文件夹,或者自己建一个)
    cd 到jar包位置,执行以下命令

    $ nohup java -jar 包名.jar >log.txt &
    
    // 这种方法会把日志文件输入到你指定的文件中,没有则会自动创建。并且进程会在后台运行。
    // 不要忘记后边的  &
    

    我们查看一下端口情况,我的占用的是8001端口,执行netstat -anp |grep 8001,看到如下
    在这里插入图片描述

    此时,后台已经跑起来了,并且有一些tcp连接随时待命

  • 以下回答由chatgpt基于相关博客总结生成:

    对于页面背景无法正常显示和ajax文件上传功能无法正常使用的问题,可能是由于nginx代理时没有正确配置静态资源导致的。解决方法如下:

    1. 在Nginx的配置文件中,配置静态资源所在的路径:
    location /static {
        root /path/to/your/static/folder;
    }
    
    1. 确认静态资源的路径是正确的,例如在jsp页面中引用静态资源的路径应该是相对于应用的根路径,如:
    <link rel="stylesheet" href="/static/css/style.css">
    
    1. 对于文件上传功能,需要将nginx的配置文件中的以下字段设置为较大的值,以支持较大的上传文件:
    client_body_buffer_size 20M; # 客户端请求体缓冲区大小
    client_max_body_size 20M; # 客户端请求的最大请求体大小
    
    1. 如果仍然无法解决该问题,可以通过查看Nginx的日志文件来定位具体的错误信息,从而进一步排查问题。