想通过nginx来访问服务器上的图片

可以搭建一个nginx图片服务器。

做法如下:

先安装nginx,这里直接用yum来进行安装的

安装方法如下:

https://blog.csdn.net/imliuqun123/article/details/103473154

安装完成后,到/etc/nginx/conf.d/下

复制default.conf或者直接修改default.conf也可以,我这里就直接修改了

vim default.conf

server {
listen 80;
server_name localhost; #charset koi8-r;
#access_log /var/log/nginx/host.access.log main; location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
#在下面添加如下内容:
location /images {
root /usr/local/src/;
autoindex on;
}

添加完成后,保存退出,并创建相关路径和上传图片

mkdir /usr/local/src/images/

上传图片,可以使用winscp,rz,或者其他习惯的手法

上传完成后,检验nginx的配置文件格式是否正确

nginx -t

没问题后,进行nginx的重启或者重新载入配置

systemctl restart nginx 或者nginx -s reload

全部都ok后,在浏览器中,输入url访问

http://192.168.25.100/images/2.jpg

But:持续出现404报错,导致问题持续了好久,下面是总结

问题:

前期配置的时候,配置文件如下:

location /images/ {
        root   /usr/local/src/images;
        autoindex on;
    }

导致持续是404报错,结果是对root的原理和分析不到位造成的。

下面的root /usr/local/src/images路径本身没有错误,但是他和上面localtion images/ 出现了重叠

也就是当你使用/usr/local/src/images的时候访问网站的url

输入的网址为:http://192.168.25.100/images/2.jpg

但经过nginx的配置后,就变成了

http://192.168.25.100/images/images/2.jpg

这个路径肯定是不存在的,所以持续报错

而当配置修改为后:

location /images {
        root   /usr/local/src;
        autoindex on;
    }

再次访问images的时候,就不会出现重叠,文件自然而然就能展示出来了

这里有一个大坑,同学们不要掉进去哦

还有一种方法避免大坑,就是将root修改为alias

location /images {
        alias   /usr/local/src/images;
        autoindex on;
    }

这样访问的nginx也是不会报404的

一般情况下,location / 下面会使用root,而location /xxx/ 下面都会使用alias来区分和防止出现问题

最新文章

  1. iOS -- 轮播图
  2. PBR
  3. 点击空白处div消失的方法
  4. python-selenium之firefox、Chrome、Ie运行
  5. “添加到收藏夹”功能(share)
  6. BZOJ1901 - Dynamic Rankings(树状数组套主席树)
  7. .NET 设计模式之单例模式(一)
  8. Bzoj 2749: [HAOI2012]外星人 欧拉函数,数论,线性筛
  9. React入门---基础知识-大纲-1
  10. jquery传值与判断
  11. Protobuf-java maven配置
  12. tf.contrib.slim arg_scope
  13. COMException: The data necessary to complete this operation is not yet available.
  14. ORACLE ROWNUM解析[转]
  15. 开源|如何使用CNN将视频从2D到3D进行自动转换(附源代码)
  16. TeeChart入门
  17. [EffectiveC++]item43:学习处理模板化基类内的名称
  18. Oracle学习笔记(一)
  19. YAML 语言
  20. 验证码及密码加密在java中使用

热门文章

  1. Struts2 S2-061(CVE-2020-17530)漏洞复现
  2. js获取url参数、图片转本地base64跨域问题
  3. 数组问题:a[i][j] 和 a[j][i] 有什么区别?
  4. Oh my God, Swagger API文档竟然可以这样写?
  5. Exception in thread "main" java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;
  6. bp VNext 入门——让ABP跑起来
  7. [水题日常]UVA1639 糖果(Candy,ACM/ICPC Chengdu 2012)
  8. 群晖DS218+部署GitLab
  9. RabbitMQ 详解 五种队列-SpiritMark
  10. PHP代码样例