onlyoffice监听https

修改onlyoffice

在开始将您的ONLYOFFICE Docs切换到HTTPS协议之前,您需要创建一个安全证书和证书私钥。将它们放到安装ONLYOFFICE Docs的计算机上的一个文件夹中。
获得证书后,请执行以下步骤:

所有命令都应以管理员权限执行。要以管理员身份启动命令提示符,请右键单击桌面左下角的 "开始 "菜单按钮,然后单击 "命令提示符(管理员)"选项。

  1. 停掉onlyoffice代理服务
    在这里插入图片描述
  2. 复制%ProgramFiles%\ONLYOFFICE\DocumentServer\nginx\conf\ds-ssl.conf.tmpl%ProgramFiles%\ONLYOFFICE\DocumentServer\nginx\conf\ds.conf
COPY /Y "%ProgramFiles%\ONLYOFFICE\DocumentServer\nginx\conf\ds-ssl.conf.tmpl" "%ProgramFiles%\ONLYOFFICE\DocumentServer\nginx\conf\ds.conf"
  1. 编辑 %ProgramFiles%ONLYOFFICE\DocumentServer\nginx\confds.conf 文件,将双引号{{…}}中的所有参数改为实际使用的参数。
    {{SSL_CERTIFICATE_PATH}} -您获得的SSL证书的路径;
    {{SSL_KEY_PATH}} - SSL证书私钥的路径;
    {{SSL_VERIFY_CLIENT}} - 是否启用客户端证书验证(可用值为on、off、optional和optional_no_ca);
    {{CA_CERTIFICATES_PATH}} - 客户端证书的路径,如果使用先前的参数启用,则将验证该路径;;
    {{ONLYOFFICE_HTTPS_HSTS_MAXAGE}} -高级配置选项,用于在ONLYOFFICE Docs NGINX vHost配置中设置HSTS最大使用期限,仅在使用SSL时适用(通常默认为31536000,这被认为足够安全);
    {{SSL_DHPARAM_PATH}} - Diffie-Hellman参数的路径;

在这里插入图片描述
有关配置文件中使用的 SSL 参数的更多信息,请参阅 NGINX 文档。
完成所有更改后,您可以再次启动 ONLYOFFICE DocumentServer 代理服务:
在这里插入图片描述
5. Execute %ProgramFiles%\ONLYOFFICE\DocumentServer\bin\documentserver-update-securelink.bat
在这里插入图片描述

https://helpcenter.onlyoffice.com/installation/docs-enterprise-https-windows.aspx

按照上述教程弄好之后确实能访问https但是websocket连接报错,找了半天没有找到合适的解决方案,重新安装,准备尝试反向代理

在这里插入图片描述

反向代理

iis

安装https证书

准备好https的证书,解压,安装证书
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装插件

Application Request Routing
在这里插入图片描述
URL Rewrite
在这里插入图片描述
安装完成之后打开iis查看是否多了两个功能
在这里插入图片描述
双击Application Request
在这里插入图片描述
开启代理即可,别忘记点击应用
在这里插入图片描述

新建网站

在这里插入图片描述

URL重写代理

https://helpcenter.onlyoffice.com/installation/docs-community-proxy.aspx

iis尝试失败
在这里插入图片描述

双击URL重写,添加规则,选择空白规则
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
模式填写(.*),重写填写http://localhost/{R:1}
在这里插入图片描述
点击应用访问https://localhost
在这里插入图片描述
但是这时候websocket还不行,需要代理websocket,再次修改规则
注意一下,只有IIS8.0以上才支持websocket。
{CACHE_URL} (.+)s://{CACHE_URL} (.*)s://
在这里插入图片描述
rewrite URL改为:{C:1}😕/需要代理的项目地址/{R:1}例如{C:1}://localhost/{R:1}
在这里插入图片描述
这样就实现了https和websocket的代理

最后的web.config配置如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration><system.webServer><rewrite><rules><rule name="OnlyofficeWebsocketProxy"><match url="(.*)" /><conditions><add input="{CACHE_URL}" pattern="(.+)s://" /><add input="{CACHE_URL}" pattern="(.*)s://" /></conditions><action type="Rewrite" url="{C:1}://localhost/{R:1}" /></rule></rules></rewrite></system.webServer>
</configuration>

不过运行项目遇到了一个错误,文档预览下载失败
在这里插入图片描述
在这里插入图片描述

iis尝试失败,如果有大佬知道请告知~~

nginx

下载

nginx版本1.25.4
下载nginxhttp://nginx.org/en/download.html

修改配置

修改nginx.conf


#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '#                  '$status $body_bytes_sent "$http_referer" '#                  '"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;# Use this example for proxy HTTPS traffic to the document server running at 'backendserver-address'.# Replace {{SSL_CERTIFICATE_PATH}} with the path to the ssl certificate file# Replace {{SSL_KEY_PATH}} with the path to the ssl private key fileupstream docservice {server 127.0.0.1;}map $http_host $this_host {"" $host;default $http_host;}map $http_x_forwarded_proto $the_scheme {default $http_x_forwarded_proto;"" $scheme;}map $http_x_forwarded_host $the_host {default $http_x_forwarded_host;"" $this_host;}map $http_upgrade $proxy_connection {default upgrade;"" close;}proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $proxy_connection;proxy_set_header X-Forwarded-Host $the_host;proxy_set_header X-Forwarded-Proto $the_scheme;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;## Normal HTTP host#server {#  listen 0.0.0.0:80;#  listen [::]:80 default_server;#  server_name _;#  server_tokens off;##  ## Redirects all traffic to the HTTPS host#  return 301 https://$server_name:443$request_uri;#}server {listen 0.0.0.0:443 ssl;listen [::]:443 ssl default_server;server_tokens off;root /usr/share/nginx/html;## Strong SSL Security## https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html# ssl on;ssl_certificate D:\\Onlyoffice\\nginx\\xxxx.pem;ssl_certificate_key D:\\Onlyoffice\\nginx\\xxxx.key;ssl_verify_client off;ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;ssl_session_cache  builtin:1000  shared:SSL:10m;ssl_prefer_server_ciphers   on;## [Optional] Before enabling Strict-Transport-Security headers, ensure your server is properly configured for SSL.## This directive informs the browser to always use HTTPS. For more info see:## - https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security# add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;# add_header X-Frame-Options SAMEORIGIN;add_header X-Content-Type-Options nosniff;## [Optional] If your certficate has OCSP, enable OCSP stapling to reduce the overhead and latency of running SSL.## Replace with your ssl_trusted_certificate. For more info see:## - https://medium.com/devops-programming/4445f4862461## - https://www.ruby-forum.com/topic/4419319## - https://www.digitalocean.com/community/tutorials/how-to-configure-ocsp-stapling-on-apache-and-nginx# ssl_stapling on;# ssl_stapling_verify on;# ssl_trusted_certificate /etc/nginx/ssl/stapling.trusted.crt;# resolver 208.67.222.222 208.67.222.220 valid=300s; # Can change to your DNS resolver if desired# resolver_timeout 10s;## [Optional] Generate a stronger DHE parameter:##   cd /etc/ssl/certs##   sudo openssl dhparam -out dhparam.pem 4096### ssl_dhparam /etc/ssl/certs/dhparam.pem;location / {proxy_pass http://docservice;proxy_http_version 1.1;}}}

启动nginx即可~~,感觉比iis简单

目前nginx测试没问题,如果想要监听80端口也可以开启,如果关闭系统或者注销可能就不能用了,需要以服务方式安装nginx

https://www.cnblogs.com/wcrBlog/p/11881656.html
https://www.cnblogs.com/nonkicat/p/10672787.html
https://blog.csdn.net/m0_53401243/article/details/133869439
https://weiku.co/article/561/
https://stackoverflow.com/questions/14841986/iis-aar-url-rewrite-for-reverse-proxy-how-to-send-http-host/14842856#14842856
https://techcommunity.microsoft.com/t5/iis-support-blog/arr-change-the-hostname-on-re-routing-to-backend-node-the/ba-p/1340780

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726020.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

递推与递归DFS

&#xff1b;例题引入&#xff1a; 在跳楼梯问题中&#xff0c;我们假设每次可以跳1级或2级。如果我们想跳到第N级台阶&#xff0c;那么我们的最后一次跳跃只能是1级或2级。 如果我们最后一次跳1级&#xff0c;那么我们必须先跳到第N-1级台阶。由于跳到第N-1级台阶有f(N-1)种方…

快速了解Redis

Redis是什么&#xff1f; Redis是一个数据库&#xff0c;是一个跨平台的非关系型数据库&#xff0c;Redis完全开源&#xff0c;遵守BSD协议。它通过键值对(Key-Value)的形式存储数据。 它与mysql数据库有什么区别&#xff1f; redis通过键值对(Key-Value)的形式存储数据&…

springboot源码解析之Model和Map参数解析

springboot源码解析之Model和Map参数解析 标签:源码:springboot 测试代码 Controller public class HelloController {RequestMapping("/helloModelAndMap")public String helloModelAndMap(HttpServletRequest request, Model model, Map<String, Object> …

万物皆可Find My,伦茨科技ST17H6x芯片赋能产品苹果Find My功能

苹果的Find My功能使得用户可以轻松查找iPhone、Mac、AirPods以及Apple Watch等设备。如今Find My还进入了耳机、充电宝、箱包、电动车、保温杯等多个行业。苹果发布AirTag发布以来&#xff0c;大家都更加注重物品的防丢&#xff0c;苹果的 Find My 就可以查找 iPhone、Mac、Ai…

[ISP]DCT离散余弦变换及C++代码demo

1.基本定义 离散余弦变换(DCT for Discrete Cosine Transform) DCT&#xff08;Discrete Cosine Transform&#xff0c;离散余弦变换&#xff09;是一种常用的信号处理技术&#xff0c;广泛应用于图像处理、音频处理、视频压缩等领域。DCT将一个信号或数据序列从时域&#xf…

【Tauri】(5):本地运行candle和 qwen 大模型,并测试速度

1&#xff0c;本地运行candle 关于candle项目 https://github.com/huggingface/candle Hugging Face 使用rust开发的高性能推理框架。 语法简单&#xff0c; 风格与 PyTorch 相似。 CPU 和 Cuda Backend&#xff1a;m1、f16、bf16。 支持 Serverless&#xff08;CPU&#xff…

简单两步,从补税到退税

大家好&#xff0c;我是拭心。 最近到了一年一度的个人所得税年度申报时期&#xff0c;有人可以退好几千&#xff0c;而有的人则需要补上万元&#xff0c;人类的悲喜这一刻并不相通。 我申报的时候&#xff0c;提示我需要补税一万多&#xff0c;心有不甘但差一点就认了&#xf…

java SSM科研管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM科研管理系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S…

selenium鼠标操作实战

鼠标操作实战 鼠标单击操作 click()内置鼠标操作包ActionChains鼠标双击操作double_click()鼠标右击操作context_click()鼠标指针悬浮操作move_to_element(ele)鼠标拖动操作drag_and_drop(source, target)其他鼠标操作汇总 鼠标单击操作 click() from selenium import webdriv…

python中的文件操作2

文件遍历 在Python中&#xff0c;遍历文件通常指的是逐行读取文件中的内容。这种方式对于处理大型文件特别有用&#xff0c;因为它不需要一次性将整个文件加载到内存中。下面是几种常见的遍历文件内容的方法&#xff1a; 1. 使用with语句和for循环 这是最推荐的方式&#xf…

“2024杭州智慧城市及安防展会”将于4月在杭州博览中心盛大召开

2024杭州国际智慧城市及安防展览会&#xff0c;将于4月24日在杭州国际博览中心盛大开幕。这场备受瞩目的盛会&#xff0c;不仅汇集了全球智慧城市与安防领域的顶尖企业&#xff0c;更是展示最新技术、交流创新理念的重要平台。近日&#xff0c;从组委会传来消息&#xff0c;展会…

【网站项目】089理发店会员管理系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

设计模式之模版方法实践

模版方法实践案例 实践之前还是先了解一下模版方法的定义 定义 模板方法模式是一种行为设计模式&#xff0c;它定义了一个骨架&#xff0c;并允许子类在不改变结构的情况下重写的特定步骤。模板方法模式通过在父类中定义一个模板方法&#xff0c;其中包含了主要步骤&#xf…

上海亚商投顾:沪指缩量调整 机器人概念股午后大涨

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日缩量震荡&#xff0c;创业板指午后涨超1%&#xff0c;随后上演冲高回落走势。风电、光伏等新能源方向…

Redis第7讲——哨兵模式详解

为了解决主从模式的无法自动容错及恢复的问题&#xff0c;Redis在主从复制的基础上加入了哨兵节点&#xff0c;也就是我们熟悉的哨兵模式。但现在基本不会用到哨兵模式&#xff0c;也就是这种模式只存在于面试中。 一、什么是哨兵模式 ps&#xff1a;主从服务器之间的数据同步…

ping多个IP的工具

Ping Tool 项目地址 python开发的IP搜索小工具 ping一个网段所有IP&#xff0c;显示结果查看某个ip地址开放监听的端口配置可保存

Python基于opencv的人脸识别上课签到考勤系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

MATLAB环境下基于图像处理的计算病理学图像分割(MATLAB R2021B)

人工智能是病理学诊断和研究的重要新兴方法&#xff0c;其不仅可用于病理形态数据分析&#xff0c;还可整合免疫组化、分子检测数据和临床信息&#xff0c;得出综合的病理诊断报告&#xff0c;为患者提供预后信息和精准的药物治疗指导。计算病理学是病理学与AI、计算机视觉等信…

vant van-field 密码输入框小程序里隐藏、显示密码bug总结

老规矩先上效果图: vant 输入框组件 密码的隐藏与显示功能&#xff1a; 注: 用password属性控制密码的显示与隐藏 不要用type属性&#xff0c;type属性在真机上有时会没有效果 1、当然如果只用typepassword 不需要切换显示、隐藏也可以使用。 2、如果用到了密码的显示与…