开发者社区> 问答> 正文

nginx + tomcat css静态文件- 服务报错

环境:Centos中nginx + tomcat(两个相同项目)做负载均衡,出现一个问题tomcat webapps下面的项目里面的静态文件css无法加载。请问一下使用nginx是否必须把tomcat里面的静态文件(.css/.js)文件提取出来呢?还是可以通过配置nginx.conf配置文件直接访问tomcat项目中的静态文件?谢谢。

展开
收起
montos 2020-05-29 21:08:08 708 0
1 条回答
写回答
取消 提交回答
  • 你先确认一下webapps下是否拦截了对css文件的访问?######@xueyu55521 那是不是切换到另一个tomcat项目访问了?你的tomcat允许跨域访问么?######没有禁用的,不用负载均衡、nginx单个项目访问时没有问题的。######上配置文件!######回复 @xueyu55521 : 可以访问项目中的资源文件。你的nginx配置发上来啊######想问一个前提条件:使用nginx是否必须把tomcat里面的静态文件(.css/.js)文件单独提取出来呢?不可以直接访问项目里面的静态文件?因为现在的静态文件是在项目里面。我也想要一个可用的配置文件呢...######

    location ^~ /assets/ { root /project/assets; }



    ######回复 @xueyu55521 : 那就动静分离吧######回复 @oxygensir : 不是在同一台,nginx服务主机(192.168.1.115)与两台相同服务的主机(192.168.1.105/192.168.1.106),现在就是因为代理出现问题。nginx访问不到项目里面的静态资源。######回复 @xueyu55521 : 你的tomcat和nginx是在一台机子上吗?如果是就是绝对路径,不是就需要做代理######root的路径是nginx服务器所在的绝对路径(静态文件)吗 跟tomcat服务所在的主机没关系吧######当然要搞动静分离了。 css js这些挪到其他目录下来,nginx指向下。######回复 @xueyu55521 : 这样来说吧,用tomcat的虚拟路径映射,即使把图片映射出去了,每次客户端请求加载图片的时候,这个请求还是会转到tomcat,而如果用nginx,这种请求在nginx端就处理掉了,tomcat压根见不到,这也就减少了tomcat的请求压力。######回复 @Will_awokE : 页面的访问路径?虚拟访问路径?######回复 @Will_awokE : 如果看中负载均衡呢 有别的推荐?######回复 @xueyu55521 : tomcat下面的war的结构不需要任何变动,只需要把静态的挪出来就行。当然此时tomcat下面的静态文件已经没有任何卵用了,为了减少project大小,建议还是删掉。######回复 @xueyu55521 : 不动静分离用nginx干嘛? 难不成只看上它做负载了?######

    您好,我也遇到这个问题,

    1.项目没有做动静分离,

    2.该主机跑一个tomcat容器,

    3.该主机nginx代理到该容器的端口,

    问题:css样式加载失败,博主怎么解决的啊

    2020-05-29 21:08:22
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《Nginx 代理系统常用手册》 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载