开发者社区> 问答> 正文

nginx配合tomcat静态资源不加载

主题:nginx配合tomcat,静态资源不加载


配置文件如下:
1.虚拟站点的配置

2.nginx.conf的配置使用的通用配置,未作大修改.


问题:
1.直接访问ht tp://ip:8281 是能加载动态和静态资源的.
2.直接访问ht tp://site1.abc.com 只能加载动态资源.
3.使用这个配置也是不行:配置如下






先谢谢你能浏览我的问题!

展开
收起
今元集团 2015-08-25 16:57:09 21442 0
4 条回答
写回答
取消 提交回答
  • 旺旺:nectar2。
    楼主您好,

    请问您的tomcat的配置文件内容是什么呢?
    2015-08-25 20:23:19
    赞同 展开评论 打赏
  • 一个程序员,欢迎骚扰!!!
    LZ所说的应该是对静态资源进行缓存配置吧?

    -------------------------

    回 10楼(今元集团) 的帖子
    你确定这样配置?直接缓存就ok了不是、nginx使用proxy_cache 缓存tomcat的静态资源到指定目录、然后设置缓存时间 等等。

    你直接在location下设置了个root 是想读取 nginx下配置的静态文件?

    配置如下:
    location ~ .*.(js|css|png|gif|jpg)$
            {
                proxy_pass  http://192.168.1.66:8080; #主要在这里,设置一个代理 地址自行修改
                proxy_redirect off;
                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_cache cache;
                add_header Nginx-Cache $upstream_cache_status;
                proxy_cache_valid  200 304 301 302 8h;
                proxy_cache_valid  404 1m;
                proxy_cache_valid  any 2d;
                proxy_cache_key $host$uri$is_args$args;
                expires 30d;
            }
    然后 nginx.conf 加入 一下代码即可  目录自行定义。
    proxy_temp_path /data/temp_dir;
    proxy_cache_path /data/cache levels=1:2 keys_zone=cache:50m inactive=20m max_size=30g;

    然后 重启下 ./nginx -s reload




    如果缓存目录出现以上内容 说明缓存成功。


    这样 项目中发送的静态文件请求 会从nginx中读取 而不再向tomcat发请求了。


    LZ 应该是这个意思吧。



    -------------------------

    回 12楼(今元集团) 的帖子
    你在tomcat虚拟目录下 建一个ROOT 把项目放进去 试试、以前貌似我遇到过类似的 不加ROOT 貌似无法运行。
    2015-08-25 19:39:40
    赞同 展开评论 打赏
  • 解决方案工程师,负责为企业规划上云迁移方案和云上架构设计,在网站建设开发和云计算领域有多年经验,专注于Linux平台的系统维护以及应用部署。致力于以场景化的方式让云计算,用更加通俗易懂的方式让更多人体验云计算,让云端的计算更质朴的落地。
    那么 tomcat 正常。
    Nginx 的反代设置有问题

    -------------------------

    回 3楼(今元集团) 的帖子
    location / {  
            proxy_cache_valid 200 30m;
            proxy_cache_valid 404 1m;
            proxy_pass http://127.0.0.1:8281;
            proxy_ignore_headers X-Accel-Expires Expires Cache-Control;
            proxy_ignore_headers Set-Cookie;
            proxy_hide_header Set-Cookie;
            proxy_hide_header X-powered-by;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header Host $http_host;
            expires 10m;
        }
    试试


    -------------------------

    回 5楼(今元集团) 的帖子
    反代,我还是败下阵来了,不会玩~
    2015-08-25 17:05:38
    赞同 展开评论 打赏
  • Renginx配合tomcat静态资源不加载


    这是不能访问静态资源的截图

    -------------------------

    回2楼ivmmff的帖子
    是的,您有好的方法吗.

    -------------------------

    回4楼ivmmff的帖子




    报错的行,我注释掉还是如此?

    -------------------------

    回8楼dongshan8的帖子
    您好,
    tomcat的配置,使用原始配置,只修改了8080端口.

    -------------------------

    回6楼小柒2012的帖子
    你好,
    还没有到进行缓存设置的那一步优化.

    目前停留在,使用nginx监听80端口,代理访问tomcat的静态资源.

    -------------------------

    回11楼小柒2012的帖子
    你好,谢谢你的解答.

    后来我用tomcat安装上以后自带的ROOT代码,测试是没问题的,估计是我们的java代码有点问题,还在跟进中.

    2015-08-25 17:02:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

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