• https布署的几种方式总结(apply in vms)


    目录

    nginx反向代理

     spring-boot 反向代理

     spring-boot的https布署

    spring-boot的反向代理

    总结

    参考文章 


    nginx反向代理

     

    1. server {
    2. # listen 443;
    3. listen 0.0.0.0:443 ssl http2;
    4. listen [::]:443 ssl http2;
    5. server_name 10.30.2.6 alias another.alias;
    6. ssl_certificate /home/dualven/ssl/server.crt; ##prosody生成的秘钥位置
    7. ssl_certificate_key /home/dualven/ssl/server.key; ## prosody生成的秘钥位置
    8. ssl_session_cache shared:SSL:1m;
    9. ssl_session_timeout 5m;
    10. root /docker/nginx/jitsi/;
    11. # location ~ ^/([a-zA-Z0-9=\?]+)$ {
    12. # rewrite ^/(.*)$ / break;
    13. # }
    14. location /{
    15. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    16. proxy_set_header X-Real-IP $remote_addr;
    17. proxy_set_header Host $host;
    18. index index.html index.htm;
    19. }
    20. ssl_ciphers HIGH:!aNULL:!MD5;
    21. ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    22. ssl_prefer_server_ciphers on;
    23. index index.html index.htm;
    24. location /http-bind {
    25. proxy_pass http://localhost:5280/http-bind;
    26. proxy_set_header X-Forwarded-For $remote_addr;
    27. proxy_set_header Host $http_host;
    28. }
    29. # installation for the electron version of Jitsi Meet to work
    30. # https://github.com/jitsi/jitsi-meet-electron
    31. location /external_api.js {
    32. alias /docker/nginx/jitsi/libs/external_api.min.js;
    33. }
    34. location /monitoring {
    35. proxy_hide_header X-Frame-Options;
    36. add_header X-Frame-Options ALLOWALL;
    37. proxy_pass http://10.60.2.175:8920;# 后端地址
    38. }
    39. location /php-server{
    40. proxy_hide_header X-Frame-Options;
    41. add_header X-Frame-Options ALLOWALL;
    42. proxy_pass http://10.60.2.185:2580/GSoapWebserviceSDK/service/service.php;# 后端地址
    43. }
    44. location /meta-server/{
    45. proxy_hide_header X-Frame-Options;
    46. add_header X-Frame-Options ALLOWALL;
    47. proxy_set_header X-Real-IP $remote_addr;

     

     

     spring-boot 反向代理

     spring-boot的https布署

     

    spring-boot的反向代理

     

    总结

    (1) 使用nginx方案比较简洁明了。视频等浏览器的API需要 https的环境,那么我们使用nginx布署为https的是很简单的。 然后通过  https的环境,调用纯http的API,会有

     

    1. 是的,我前端web框架使用https了。然后在这里面,需要通过http://10.60.2.185:2580/GSoapWebserviceSDK/service/service.php
    2. 来调用 soap的API,这样会出现 The page at ‘https://127.0.0.1/’ was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint ‘http://10.60.2.185:2580/GSoapWebserviceSDK/service/service.php’. This request has been blocked; the content must be served over HTTPS.

    如果通过内部代理的方式 ,就很容易解决这个问题。 

     

    (2) 而我们在windows里制作安装包,少一个中间件就能省去不少麻烦,所以如果不使用nginx,通过spring-boot 自己的web服务,我们可以把vms-ui布署上去; 再通过spring-boot自己的https的方式,也可以使得服务 变成 https 的;在反向代理 方面,我们也可以通过 proxyServlet 来实现类似nginx的代理作用。  

        唯一有点麻烦的是,在vms-ui的前端,我们的ajax的调用封装了,需要如此设置下。 

    另外:如果不需要做安装包的话,因为安装包的话,最后需要设置服务器及创世服务器的ip地址,这样才把这个地址要映射到服务器后端,因为前端需要提前映射 ,如果不需要上述,还有方法可以解决,如图:

    在研发环境 .env.develop里,映射 的是http地址; 在生产环境,映射的是https地址。

     

     

     

    参考文章 

    Spring Boot 开启https访问(配置SSL证书)_等風徕的博客-CSDN博客_springboot 开启https

    【Spring Web教程】SpringBoot 实现反向代理和轻量级网关_terrybg的博客-CSDN博客_springboot 反向代理

  • 相关阅读:
    一本非专业应届生成功斩获华为22k OFFER,如何实现
    静态链接与动态链接
    【Linux】Linux常用命令—文件管理(上)
    运维数据中台的建设方法、实践与展望
    1. @Component注解的原理剖析
    Cascade-MVSNet论文笔记
    Spring Boot框架
    Pyside6 资源系统和资源文件使用
    共享单车之租赁需求预估
    java计算机毕业设计ssm金华学校社团管理系统
  • 原文地址:https://blog.csdn.net/dualvencsdn/article/details/127725111