如何在Window系统部署VisualSVN服务并结合cpolar实现无公网ip远程访问

news2024/11/16 0:42:08

文章目录

    • 前言
    • 1. VisualSVN安装与配置
    • 2. VisualSVN Server管理界面配置
    • 3. 安装cpolar内网穿透
      • 3.1 注册账号
      • 3.2 下载cpolar客户端
      • 3.3 登录cpolar web ui管理界面
      • 3.4 创建公网地址
    • 4. 固定公网地址访问

前言

SVN 是 subversion 的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,使得多个人可以共同开发同一个项目,实现共享资源,实现最终集中式的管理。Subversion作为一个通用的系统,可用来管理任何类型的文件,其中包括程序源码。

SVN与CVS一样,也是一个跨平台的软件,支持大多数常见的操作系统。本篇教程主要介绍SVN服务器在Windows平台上的安装和配置过程。与如何结合cpolar内网穿透工具,实现随时随地公网远程访问内网本地服务。

1. VisualSVN安装与配置

首先,到SVN的官方网站:https://www.visualsvn.com/downloads/ 下载服务端安装程序:

image-20230926143820244

下载好安装程序后,双击进入安装配置界面,点击Next进行下一步:

1695710420599

在我接受勾选框打勾,点击Next进入下一步:

1695710606246

默认当前选择,点击Next进入下一步:

1695710653508

本界面中有四个选项,除了端口外的其他三个选项都可以点击Browse进行路径修改:

Location:软件的安装位置,注意不要出现中文、空格或特殊字符。

Repositories:默认版本仓库位置,自己选择。

Server Port:端口号,443 或者 8443 都可以。

Backups:备份文件保存路径。

1695711353780

我这里选择了默认路径与端口,点击Next进入下一步:

1695711605782

不打钩,点击Next进入下一步:

1695711680382

默认第一个选项,点击Next进入下一步:

1695711743763

点击Install进行安装:

1695711892115

安装进度条走完后,点击Finish完成安装。

2. VisualSVN Server管理界面配置

点击Finsih后,会弹出SVN Server的管理界面,点击上方导航中的操作按钮,点击选项中的Properties

1695712428391

在打开的窗口中:

首先点击左侧的第三项:Network

然后点击右侧的Server name下方的选择框,输入服务器名称,这里我选择填写了localhost,也可以填写本地局域网的ip

服务端口默认选择:80

然后把下方使用安全连接的勾选取消,点击下方OK。

image-20230926151747661

然后点击左侧SVN服务下方的Users,右键选择新建user

1695713019078

在弹出的窗口中设置用户名和密码,并确认密码,点击OK

这里的用户名我选择了admin,密码选择了123456,大家可以自行设置

1695713289959

因为设置简单密码会显示下图弹窗,提示密码不符合长度或复杂性要求,本教程仅为演示,所以这里我选择点击继续设置此密码选项。

1695713511696

创建好新用户后,我们点击左侧SVN服务下方的Repositories,右键选择新建Repository(项目),点击Next进入下一步:

1695713876785

填写项目名称,这里我填写了共享文件,大家可以自定义填写,点击Next进入下一步:

1695713970790

默认选择即可,点击Next进入下一步:

1695714105340

默认选择即可,点击Next进入下一步:

1695714147950

打钩选项默认即可,点击Create开始创建:

1695714217070

点击Finish完成项目创建

1695714315998

此时,在浏览器输入localhost,在弹窗中输入刚才在SVN服务时配置的用户名admin和密码123456,点击登录

1695715162300

登录后,即可在本地局域网看到刚才在SVN创建的项目:共享文件

1695715327999

3. 安装cpolar内网穿透

此时VisualSVN Server已经成功登录并运行,不过只能在本地访问,如果打算在公网环境随时随时访问内网的VisualSVN服务,我们需要安装cpolar内网穿透工具来实现。

3.1 注册账号

进入cpolar官网:https://www.cpolar.com/

点击右上角的免费注册,使用邮箱免费注册一个cpolar账号并登录

20221117173301

3.2 下载cpolar客户端

登录成功后,点击下载cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

20221117173307

3.3 登录cpolar web ui管理界面

在浏览器上访问127.0.0.1:9200,使用所注册的cpolar邮箱账号登录cpolar web ui管理界面(默认为本地9200端口)

20221117173316

3.4 创建公网地址

登录成功进入主界面后,我们点击左侧仪表盘的隧道管理——隧道列表,再点击创建隧道.

1695718676197

  • 隧道名称:可自定义命名,不能与已有的隧道名重复,这里我填写了svn

  • 协议:选择http

  • 本地地址:80

  • 域名类型:免费套餐选择随机域名

  • 地区:China Top

点击创建

1695719361633

此时,点击左侧状态中的在线隧道列表,可以看到刚才创建的svn隧道,生成了两个公网地址,有两种访问方式,分别是http 和https,随意复制一个地址,在公网电脑浏览器打开即可,如下图所示即代表成功实现公网访问本地内网的VisualSVN Server。

image-20230926171550179

4. 固定公网地址访问

需要注意的是,本次教程中使用的是免费cpolar所生成的公网随机临时地址,该地址24小时内会发生变化,对于需要长期在外网环境使用VisualSVN Server的用户来讲,配置一个固定地址就很有必要。

因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

1695721287104

以本次教程为例,地区选择China VIP,二级域名填写mysvn,描述填写svntest,点击保留

1695721584218

保留成功后复制保留的二级子域名地址,登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道:mysvn,点击右侧的编辑

1695722097556

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名mysvn
  • 地区:选择China VIP

点击更新

1695722164012

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

1695722230101

最后,我们使用固定的公网地址进行连接访问,复制二级子域名:http://mysvn.vip.cpolar.cn 到另一台公网电脑浏览器打开,无报错和连接异常,输入用户名密码后,可以看到连接成功,这样一个固定不变的地址访问就设置好了,您可以随时随地使用该域名来公网访问内网VisualSVN Server。

image-20230926175819144

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

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

相关文章

Mixtral模型解读

Mixtral 8x7B(Mistral MoE) 1.Mistral 7B模型 Mistral 7B模型与Llama2 7B模型结构整体上是相似的,其结构参数如下所示。 细节上来说,他有两点不同。 1.1SWA(Sliding Window Attention) ​ 一般的Attention来说,是Q与KV-Cache做内积&#…

23端口登录的Telnet命令+传输协议FTP命令

一、23端口登录的Telnet命令 Telnet是传输控制协议/互联网协议(TCP/IP)网络(如Internet)的登录和仿真程序,主要用于Internet会话。基本功能是允许用户登录进入远程主机程序。 常用的Telnet命令 Telnet命令的格式为&…

基础算法(四)(递归)

1.递归算法的介绍: 概念:递归是指函数直接或间接调用自身的过程。 解释递归的两个关键要素: 基本情况(递归终止条件):递归函数中的一个条件,当满足该条件时,递归终止,避…

C++11中的auto、基于范围的for循环、指针空值nullptr

目录 auto关键字 使用原因 历史背景 C11中的auto auto的使用案例 auto 指针/引用 同一行定义多个变量 typeid关键字 基于范围的for循环 范围for的语法 范围for的使用条件 指针空值nullptr C98中的指针空值 C11中的指针空值 auto关键字 使用原因 随着程序越…

Decoupled Knowledge Distillation解耦知识蒸馏

Decoupled Knowledge Distillation解耦知识蒸馏 现有的蒸馏方法主要是基于从中间层提取深层特征,而忽略了Logit蒸馏的重要性。为了给logit蒸馏研究提供一个新的视角,我们将经典的KD损失重新表述为两部分,即目标类知识蒸馏(TCKD&a…

JavaSec 基础之五大不安全组件

文章目录 不安全组件(框架)-Shiro&FastJson&Jackson&XStream&Log4jLog4jShiroJacksonFastJsonXStream 不安全组件(框架)-Shiro&FastJson&Jackson&XStream&Log4j Log4j Apache的一个开源项目,是一个基于Java的日志记录框架。 历史…

python学习笔记------元组

元组的定义 定义元组使用小括号,且使用逗号隔开各个数据,数据是不同的数据类型 定义元组字面量:(元素,元素,元素,......,元素) 例如:(1,"hello") 定义元组变量:变量名称(元素,元素,元素,......,元素)…

哈希表是什么?

一、哈希表是什么? 哈希表,也称为散列表,是一种根据关键码值(Key value)直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,从而加快查找速度。这个映射函数叫做散列函数&#xff08…

C#与VisionPro联合开发——单例模式

单例模式 单例模式是一种设计模式,用于确保类只有一个实例,并提供一个全局访问点来访问该实例。单例模式通常用于需要全局访问一个共享资源或状态的情况,以避免多个实例引入不必要的复杂性或资源浪费。 Form1 的代码展示 using System; usi…

初阶数据结构之---栈和队列(C语言)

引言 在顺序表和链表那篇博客中提到过,栈和队列也属于线性表 线性表: 线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构。线性表在逻辑上是线性结构,也就是说是连…

c++之拷贝构造和赋值

如果一个构造函数中的第一个参数是类本身的引用,或者是其他的参数都有默认值,则该构造函数为拷贝构造函数。 那么什么是拷贝构造呢?利用同类对象构造一个新对象。 1,函数名和类必须同名。 2,没有返回值。 3&#x…

差分题练习(区间更新)

一、差分的特点和原理 对于一个数组a[],差分数组diff[]的定义是: 对差分数组做前缀和可以还原为原数组: 利用差分数组可以实现快速的区间修改,下面是将区间[l, r]都加上x的方法: diff[l] x; diff[r 1] - x;在修改完成后,需要做前缀和恢复…

4.关联式容器

关联式container STL中一些常见的容器: 序列式容器(Sequence Containers): vector(动态数组): 动态数组,支持随机访问和在尾部快速插入/删除。list(链表)&am…

奇舞周刊第521期:“一切非 Rust 项目均为非法”

奇舞推荐 ■ ■ ■ 拜登:“一切非 Rust 项目均为非法” 科技巨头要为Coding安全负责。这并不是拜登政府对内存安全语言的首次提倡。“程序员编写代码并非没有后果,他们的⼯作⽅式于国家利益而言至关重要。”白宫国家网络总监办公室(ONCD&…

Python3零基础教程之数学运算专题进阶

大家好,我是千与编程,今天已经进入我们Python3的零基础教程的第十节之数学运算专题进阶。上一次的数学运算中我们介绍了简单的基础四则运算,加减乘除运算。当涉及到数学运算的 Python 3 刷题使用时,进阶课程包含了许多重要的概念和技巧。下面是一个简单的教程,涵盖了一些常…

NOC2023软件创意编程(学而思赛道)python初中组决赛真题

目录 下载原文档打印做题: 软件创意编程 一、参赛范围 1.参赛组别:小学低年级组(1-3 年级)、小学高年级组(4-6 年级)、初中组。 2.参赛人数:1 人。 3.指导教师:1 人(可空缺)。 4.每人限参加 1 个赛项。 组别确定:以地方教育行政主管部门(教委、教育厅、教育局) 认…

嵌入式驱动学习第一周——linux的休眠与唤醒

前言 本文介绍进程的休眠与唤醒。 嵌入式驱动学习专栏将详细记录博主学习驱动的详细过程,未来预计四个月将高强度更新本专栏,喜欢的可以关注本博主并订阅本专栏,一起讨论一起学习。现在关注就是老粉啦! 行文目录 前言1. 阻塞和非阻…

Doris实战——美联物业数仓

目录 一、背景 1.1 企业背景 1.2 面临的问题 二、早期架构 三、新数仓架构 3.1 技术选型 3.2 运行架构 3.2.1 数据模型 纵向分域 横向分层 数据同步策略 3.2.2 数据同步策略 增量策略 全量策略 四、应用实践 4.1 业务模型 4.2 具体应用 五、实践经验 5.1 数据…

【Java EE】线程安全的集合类

目录 🌴多线程环境使用 ArrayList🎍多线程环境使⽤队列🍀多线程环境使⽤哈希表🌸 Hashtable🌸ConcurrentHashMap ⭕相关面试题🔥其他常⻅问题 原来的集合类, 大部分都不是线程安全的. Vector, Stack, HashT…

EndNote 21:文献整理与引用,一键轻松搞定 mac/win版

EndNote 21是一款功能强大的文献管理软件,专为学术研究者、学生和教师设计。它提供了全面的文献管理解决方案,帮助用户轻松整理、引用和分享学术文献。 EndNote 21软件获取 EndNote 21拥有直观的用户界面和强大的文献检索功能,用户可以轻松地…