zoukankan      html  css  js  c++  java
  • 用http 的形式访问ftp服务器上的图片文件

    1. 工具

      nginx 1.18.0和 ftpServe

      安装使用配置指路:https://www.cnblogs.com/YangMian/p/14913562.html

    2. 图片上传到ftp成功后,在浏览器输入ftp://127.0.0.1 没有任何反应,反而弹出什么打开2345加速浏览器。

      原本想着这问题时捆绑软件的问题,但是当我配置 ftp://127.0.0.1/文件路径   或者 ftp://userName:password@127.0.0.1/文件路径  时  到html或者jsp的超链接中时发现,浏览器提示源文件提示被阻止!!!

      但是在我的电脑里或者cmd里都能正常访问。突然发现源项目配置的访问路径不是ftp开头的,而是http开头的url

    3. 解决方案

      浏览器不能解析ftp,用http协议能访问到吗???

      查找方案中发现,nginx代理可以解决这个问题,历经两天终于解决(下面是nginx.conf的相关两个配置,都用到了nginx代理)

    #这里是我自己配置ftp下载服务
        server {  
            listen       8818;
            server_name resouce;
            root  D:ftpftpLibrary;  #访问文件根目录
            autoindex on;  #是否浏览文件下的列表
            location / {  #是否允许跨域
                add_header Access-Control-Allow-Origin *;
            }
            add_header Cache-Control "no-cache,must-revalidate";# 是否缓存
        }
        #代理ftp访问图片配置服务
        server {
            listen       8819;
            server_name localhost;
            location ~ .(gif|jpg|jpeg|png|bmq|swf)$ {
                root D:/ftp/ftpLibrary/;
            }
        }

    root 是定位ftp文件根路径,项目url后再跟具体的路径

     再次启动,发现图片出来了,url也显示是http连接(为什么能用http 来访问ftp上的图片:因为nginx代理是配置了location 那一句,当url以gif、jpg等结尾时,port满足8819  ip满足localhost(或者127.0.0.1)时就会流转到ftp文件的根目录)

    4. 注意事项

      ftp服务器配置两个用户,一个匿名用户(因为代理时怎么加上用户名和密码是个问题,权限配置时设置只读)和一个插入用户(常规的配置,权限勾选满)

  • 相关阅读:
    Apicloud_(模板)登陆注册功能模板
    Apicloud_(接口验证)用户注册头部信息X-APICloud-AppKey生成
    Apicloud_(项目)网上书城02_后端数据获取
    Apicloud_(项目)网上书城01_前端搭建
    R_Studio(时序)Apriori算法寻找频繁项集的方法
    R_Studio(聚类)针对iris数据比较几种聚类方法优劣
    R_Studio(神经网络)BP神经网络算法预测销量的高低
    JavaWeb_(SSH论坛)_七、辅助模块
    JavaWeb_(SSH论坛)_六、点赞模块
    JavaWeb_(SSH论坛)_五、帖子模块
  • 原文地址:https://www.cnblogs.com/cybg/p/15353652.html
Copyright © 2011-2022 走看看