linux服务器搭建nginx图片服务器一直404,路径问题求助

#1

server {
listen 443 ssl; #监听端口
server_name www.yilukkk.com; #请求域名
ssl on; #开启ssl
ssl_certificate cert/1936153_www.yilukkk.com.pem; #pem证书路径
ssl_certificate_key cert/1936153_www.yilukkk.com.key; #pem证书key路径
ssl_session_timeout 5m; #会话超时时间
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密算法
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #SSL协议

  # 拦截所有请求
   location / {
        proxy_http_version 1.1; #代理使用的http协议
        proxy_set_header Host $host; #header添加请求host信息
        proxy_set_header X-Real-IP $remote_addr; # header增加请求来源IP信息
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 增加代理记录
        proxy_pass http://127.0.0.1:8082/; #服务A访问地址

    }

                # 拦截websocket请求
    location /websocket {
       proxy_pass http://127.0.0.1:8082/;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
    }

location / images/{
root /user/;
autoindex on;
}

}

以上为主要server 配置

#2

你这个,/ images 前面有个空格吧??是不是这个导致的?

location / images/{
#3

server {
listen 443 ssl; #监听端口
server_name www.yilukkk.com; #请求域名
ssl on; #开启ssl
ssl_certificate cert/1936153_www.yilukkk.com.pem; #pem证书路径
ssl_certificate_key cert/1936153_www.yilukkk.com.key; #pem证书key路径
ssl_session_timeout 5m; #会话超时时间
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密算法
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #SSL协议

  # 拦截所有请求
   location / {
        proxy_http_version 1.1; #代理使用的http协议
        proxy_set_header Host $host; #header添加请求host信息
        proxy_set_header X-Real-IP $remote_addr; # header增加请求来源IP信息
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 增加代理记录
        proxy_pass http://127.0.0.1:8082/; #服务A访问地址

    }

                # 拦截websocket请求
    location /websocket {
       proxy_pass http://127.0.0.1:8082/;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
    }

location /images/{
root /user/;
autoindex on;
}

}
完整的配置贴给你,image
路径应该没有问题,我试过两种访问方式都不行,域名与ip访问
https://www.yilukkk.com/images/21.jpg
http://144.34.243.61/images/21.jpg
结果都是404

#4

是不是你前面那个拦截所有请求。把静态资源路径都给拦截了。

#5

还有办法处理么

#6

我以前的处理方式是。用二级域名来处理的。而不是使用路径的方式。

静态资源

static.springboot.io

网站服务

www.springboot.io
#7

改成 root /user/images;

#8

这种 问题 去看nginx 的日志里面写的明明白白

#9

推荐 static.domain.com 指向的你服务器ip
/usr/local/static 为静态资源路径
增加配置
server{
listen 2333;
server_name static.domain.com;
location / {
root /usr/local/static;
autoindex on; # 开启索引
charset utf-8; # 解决文件名称中文乱码的问题
autoindex_exact_size on; # 显示文件大小
autoindex_localtime on; # 显示最后修改时间
}
}

之后可以使用 static.domain.com 直接访问