Py学习  »  NGINX

【掘金者说】minio使用nginx代理配置https

掘金者说 • 3 年前 • 327 次点击  
阅读 53

【掘金者说】minio使用nginx代理配置https

掘金者说,写了分布式文件系统选型,我们可以进行正常的部署访问用后,在服务端编接口就可以使用验证。在nginx配置上面,需要nginx进行相关的调整和https代理配置

业务接口

页面访问地址:http://localhost:8010/rest/files/image/saveMinioImage

文件接口:/rest/files/image/saveMinioImage
文件类型:base64file
复制代码
  • 个别问题:无法识别的SSL消息,纯文本连接?
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
复制代码
  • 解决

访问的minio的url地址调整,使用http://127.0.0.1:9000 改成 https://minio.pig4cloud.com

nginx代理配置https

修改我们的nginx配置vi /etc/nginx/conf.d/minio.pig4cloud.com.conf

server {
    listen       80;
    server_name  minio.pig4cloud.com;
    index index.html index.htm index.php;

    location / {
          root /app/file/data/pig4cloud/;
    }
}

server {
    listen       443 ssl;
    server_name  minio.pig4cloud.com;
    ssl_certificate      /etc/nginx/cert/minio.pig4cloud.com.pem;
    ssl_certificate_key  /etc/nginx/cert/minio.pig4cloud.com.key;
    location / {
        root /app/file/data/pig4cloud/;
    }
}
复制代码

然后,进行文件验证查看图片访问地址:

https://minio.pig4cloud.com/upload/pig4cloud/2020/07/15/20200606164355_2516ab9e10434371a9c0b64d65b2af01.png
复制代码

BUG收集

  • Bug1 java.lang.IllegalArgumentException: Request header is too large In my case, I had SpringBoot 2.x and used HTTP POST, however I had to add:
server.max-http-header-size=10000000
复制代码
  • Bug2 Java中URLEncoder.encode与URLDecoder.decode处理url特殊参数的方法,防特殊字符被过滤(待处理) 文件上传是进行base64的编码字符串,这里面含有特殊字符: / + = 等等。 那么在服务端获得param会变成无特殊字符。 原因就是:如果url参数值含有特殊字符时,需要使用 url 编码。
url = "xxxxx?param=" + URLEncoder.encode("xxx", "utf-8");
复制代码

然后服务端获取时:

String param = URLDecoder.decode(param, "utf-8");
复制代码
  • Bug3 程序包com.sun.image.codec.jpeg不存在 问题的完美解决 Error:(11,32) java: 程序包com.sun.image.codec.jpeg不存在
<build>
   <plugins>
      <!-- 程序包com.sun.image.codec.jpeg不存在 问题的完美解决 -->
      <plugin>
         <artifactId>maven-compiler-plugin</artifactId>
         <version>2.5.1</version>
         <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <encoding>UTF-8</encoding>
            <compilerArguments>
               <verbose />
               <bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>
            </compilerArguments>
         </configuration>
      </plugin>
   </plugins>
</build>
复制代码

参考:

blog.csdn.net/tb9125256/a…

www.jb51.net/article/109…

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/71364
 
327 次点击