科技日益发展的今天,移动电子设备似乎成了我们生活的主角,智能手机、平板电脑几乎从不离身。但智能手机和平板电脑也有缺憾,就是自身的存储容量实在太少,能随时调取资料的大容量存储设备就显得十分必要。今天,笔者就为大家介绍,如何在电脑上,使用Serv-U+Cpolar内网穿透,构建一个ftp协议服务器,方便我们随时读取调阅文件资料。
FTP协议作为TCP/IP协议的组成部分,其主要作用就是向Web服务器传输网页资料和文件;同时由于FTP的传输效率极高,因此也常被用来传输较大的电子资料。通常FTP协议有两个组成部分,一个是FTP服务器(用于资料存储),另一个则是FTP客户端(访问指定服务器),今天介绍的Serv-U,就能让我们很轻松的搭建起一个FTP服务器。
Serv-U的功能十分强大,运行稳定且设置简单,因此很受用户的欢迎。想要搭建自己的Serv-U服务器,要先到Serv-U官网(http://www.serv-u.com.cn/)下载Serv-U。
笔者使用的电脑安装了Windows操作系统,因此选择Windows版本下载。至于其他操作系统,则可根据需求自行选择。
下载完成后,将下载的压缩包解压,双击解压后的.exe
文件,即可进行安装
进入安装程序后,只要一路点击下一步
,很快就能安装完成。在安装完成首次运行Serv-U时,会显示“当前已定义的域,要先在定义新域吗”,直接选择是
。
进入自定义域
的设置页面后,左侧的列表就是我们需要设置的内容,如果没有特殊需求,只要输入几项简单内容,接着点击下一步
即可完成设置。
首先Serv-U会要求我们对自定义域的名称
进行设置,这里填入我们喜欢的名字即可
第三步Serv-U会要求我们填入domain URL(域名网址)
,这里我们根据其范例填入本地地址即可(127.0.0.1
);第二行是file sharing repository(共享文件存储库)
,笔者选择整个E盘均进行共享。如果需要设置为共享某个文件夹的,则可以点击栏位右侧的“文件夹”图标进行选择
第四步是对Serv-U的输出端口进行设置。同样的,如果没有特殊需求、或系统默认的80端口没有被占用,则可以不用修改设置。但笔者Windows系统的80端口已经被占用,因此需要将80端口修改,这个例子中改为83。
需要注意的是,这一步中修改的端口号需要记住,以便我们之后进行FTP传输网页的访问测试,Cpolar进行内网穿透时,也会用到这个端口号。
接下来的第五步没有需要修改的内容,直接下一步
即可。
第六步(最后一步)是关于回复密码的,如果有需要的看官可以自行设置。
完成以上步骤后,我们就完成了Serv-U的共享区域设置,接下来就是添加域用户
步骤。这里我们只要跟着软件提示进行操作即可。需要注意的是,在域用户设置的最后一步,会涉及该用户访问共享文件的权限,如果不想该用户修改共享文件,则要选择“只读访问”,反之则选择“完全访问”。
在设置好访问用户后,即可点击完成
,保留访问用户的设置。
完成以上设置后,我们就可以尝试在本地电脑上访问Serv-U的共享网页。
由于我们之前设置的Serv-U地址为本地地址(127.0.0.1),因此这里我们需要在浏览器中输入本地电脑的IP地址加端口号,具体格式为http://192.168.X.X:之前设置的端口号
。在这个例子中,Serv-U访问地址为(http://192.168.157.1:83)。
只要输入的地址无误且之前的Serv-U软件设置没有问题,就会显示出Serv-U的登录界面,也就说明我们使用Serv-U搭建的FTP服务器成功上线,能够接受访客的访问。但此时Serv-U网页只能在局域网范围内访问,想要让这个网页能在任何地方都访问到,我们还需要使用Cpolar,创建一条内网穿透数据隧道。
在本地的Serv-U服务端搭建完成后,我们就可以安装Cpolar内网穿透,为我们的FTP服务器上线做好准备。与Serv-U一样,我们可以直接访问Cpolar官网(https://www.cpolar.com/),选择合适自己电脑操作系统的版本进行下载。
笔者使用的是Windows操作系统,因此选择Windows版本进行下载。
Cpolar下载完成后,将下载的文件解压,双击解压后的.msi
文件,即可自动执行安装程序。接着只要一路Next
就能完成安装。
由于cpolar会为每个用户创建独立的数据隧道,并辅以用户密码和token码保证数据安全,因此我们在使用cpolar之前,需要进行用户注册。注册过程也非常简单,只要在cpolar主页右上角点击用户注册
,在注册页面填入必要信息,就能完成注册。
完成本地Serv-U服务器的部署和Cpolar内网穿透的安装注册后,我们就可以着手为Serv-U共享网页创建一个公共互联网地址,即内网穿透数据隧道,让我们能在公共互联网条件下,也能访问到家里的FTP服务器。
由于笔者不想每天都对Serv-U的网页地址进行设置(cpolar每隔24小时会对免费用户的数据隧道地址进行重置),因此将cpolar升级到vip级别,以此获得建立长期稳定数据隧道的特权。
要达到内网穿透的目的,需要先登录cpolar的官网,并在用户主页面左侧找到预留
按钮,并点击进入cpolar的数据隧道预留页面。在这里生成一个公共互联网地址(也可以看做数据隧道的入口),由于此时这个地址没有连接本地的软件输出端口,因此也可以看做是一条空白的数据隧道。
在预留页面,可以看到很多种可保留的数据隧道,这里我们选择保留二级子域名
栏位。
在“保留二级子域名”栏位,需要进行几项信息的简单设置,
地区
:服务器所在区域,就近选择即可二级域名
:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一描述
:可以看做这条数据隧道的描述,能够与其他隧道区分开即可)完成这几项设置后,就可以点击右侧的保留
按钮,将这条数据隧道保留下来。
当然,如果这条数据隧道不打算再使用,还可以点击右侧的x
将其轻松删除,节约宝贵的隧道名额。
完成cpolar云端的设置,并保留了空白数据隧道后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地Serv-U网页端口连接起来,正式打通Serv-U的内网穿透数据隧道。与登录Cpolar云端一样,我们在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200
直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)
点击客户端主界面左侧隧道管理
——创建隧道
按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。
在这个页面,同样需要进行几项信息设置,这些信息设置包括:
1.
隧道名称
– 可以看做cpolar本地的隧道信息注释,只要方便我们分辨即可;
2.协议
– 由于Serv-U输出的是网页,因此此处选择http协议;
3.本地地址
– 本地地址即为Serv-U网站的输出端口号,因此这里填入之前设置的83号端口;
4.域名类型
– 由于我们已经在cpolar云端预留了二级子域名的数据隧道,并生成了Serv-U网页的公共互联网二级域名,因此该行我们勾选二级子域名
(如果预留的是自定义域名,则勾选自定义域名),并在下一行Sub Domain
栏中填入预留的二级子域名,该例子中为“servuFTP”。当然,如果创建的是临时数据隧道,则直接勾选“随机域名”, cpolar客户端会自行生成网络地址,而不必在cpolar云端进行设置;
5.地区
– 该行与cpolar云端时的设置一样,都是对服务器地区的选择,我们依照实际使用地填写即可;
完成cpolar客户端创建隧道所需信息的填写后,就可以点击页面下方的创建
按钮,正式生成能够从公共互联网访问到本地Serv-U网页的数据隧道。
数据隧道创建完成后,cpolar客户端会自动跳转至隧道管理
——隧道列表
页面。在这个页面,我们能看到新创建的Serv-U数据隧道的状态,同时我们也可以在这里对这条数据隧道进行操作,如启动、暂停、删除;如果需要对这条数据隧道的信息进行修改,也可以在这里点击“编辑”按钮,进入数据隧道信息修改页面。
最后,我们点击cpolar客户端左侧状态
——在线隧道列表
按钮,进入在线隧道列表页面,我们在这里可以看到Serv-U网页的公共互联网地址。
通过这个地址,我们就能其他电脑(或设备)上,访问到位于本地电脑上Serv-U网页,调取和访问共享的文件。
可以看出,使用Cpolar发布Serv-U网页的步骤和过程并不复杂,而cpolar作为内网穿透软件,不仅仅只能发布Serv-U网页,只要将打算发布的网页(或软件)端口号输入cpolar中,就能创建出连接公共互联网与本地网页(软件)之间的数据隧道。
文章浏览阅读1.3k次。# -*- coding: utf-8 -*-"""@File : 200113_等比例调整图像分辨率大小.py@Time : 2020/1/13 13:38@Author : Dontla@Email : [email protected]@Software: PyCharm"""import cv2def img_resize(image):height, width = image...._opencv小图等比例缩放
文章浏览阅读42次。对于这些调制技术的误码率(BER)研究是非常重要的,因为它们可以帮助我们了解在不同信道条件下系统的性能表现。通过以上步骤,您可以进行OFDM、OOK、PPM和QAM的误码率仿真研究,并绘制它们的误码率曲线,以便更好地了解它们在不同信道条件下的性能特点。针对这些调制技术的BER研究是非常重要的,可以帮助我们更好地了解这些技术在不同信道条件下的性能表现,从而指导系统设计和优化。6. 分析结果:根据误码率曲线的比较,分析每种调制方案在不同信噪比条件下的性能,包括其容忍的信道条件和适用的应用场景。_ber仿真
文章浏览阅读2.5w次,点赞3次,收藏3次。1、场景照抄官方的实例,绑定了 myData.Age 这个值。实际选择某个日期后,从 vuetool(开发工具)看,值已经更新了,但视图未更新。2、尝试绑定另一个值: myData,可以正常的触发 @change 方法。可能是:值绑定到子对象时,组件没有侦测到。3、解决使用 @blur 代替 @change 方法。再判断下 “值有没有更新” 即可。如有更好的方法,欢迎评论!..._el-date-picker @change不触发
文章浏览阅读1.5k次,点赞2次,收藏8次。Projectlnliersclass pcl: : Projectlnliers< PointT >类 Projectlnliers 使用一个模型和一组的内点的索引,将内点投影到模型形成新的一个独立点云。关键成员函数 void setModelType(int model) 通过用户给定的参数设置使用的模型类型 ,参数 Model 为模型类型(见 mo..._projectinliers
文章浏览阅读2.4k次。“System.BadImageFormatException”类型的未经处理的异常在 xxxx.exe 中发生其他信息: 未能加载文件或程序集“xxxxxxx, Version=xxxxxx,xxxxxxx”或它的某一个依赖项。试图加载格式不正确的程序。此原因是由于 ” 目标程序的目标平台与 依赖项的目标编译平台不一致导致,把所有的项目都修改到同一目标平台下(X86、X64或AnyCPU)进行编译,一般即可解决问题“。若果以上方式不能解决,可采用如下方式:右键选择配置管理器,在这里修改平台。_“system.badimageformatexception”类型的未经处理的异常在 未知模块。 中发生
文章浏览阅读2.4k次。记录一下碰到的问题:1.Assetbundle加载问题: 原PC打包后的AssetBundle导入安卓工程后,加载会出问题。同时工程打包APK时,StreamingAssets中不能有中文。解决方案: (1).加入PinYinConvert类,用于将中文转换为拼音(多音字可能会出错,例如空调转换为KongDiao||阿拉伯数字不支持,如Ⅰ、Ⅱ、Ⅲ、Ⅳ(IIII)、Ⅴ、Ⅵ、Ⅶ、Ⅷ、Ⅸ、Ⅹ..._电脑软件移植安卓
文章浏览阅读2.4k次。话不多说参考书籍 汪文君补充知识:start是异步,run是同步,start的执行会经过JNI方法然后被任务执行调度器告知给系统内核分配时间片进行创建线程并执行,而直接调用run不经过本地方法就是普通对象执行实例方法。什么是线程?1.现在几乎百分之百的操作系统都支持多任务的执行,对计算机来说每一个人物就是一个进程(Process),在每一个进程内部至少要有一个线程实在运行中,有时线..._start 是同步还是异步
文章浏览阅读5.3k次,点赞9次,收藏34次。我主要用了层次选择器和属性选择器可以随意选择,方便简单为主大体CSS格式 大家自行构造网页主体<body> <div class='main' > <div class='left'> <img src="images/pic.gif" /> <br/><br/> <img src="images/col.gif" alt="收藏本片"/&_单击标题“非缘勿扰”,元素中有id属性的的文本(主演、导演、标签、剧情
文章浏览阅读2.2k次。完整的解决思路_no module named 'win32com
文章浏览阅读901次,点赞20次,收藏23次。浏览器是每台电脑的必装软件,去浏览器搜索资源和信息已经成为我们的日常,我媳妇儿原本也以为浏览器就是上网冲浪而已,哪有那么强大,但经过我的演示之后她惊呆了,直接给我竖起大拇指道:“原来浏览器还能这么用?大开眼界!今天来给大家介绍几款实用的浏览器插件,学会之后让你的浏览器“活过来”!_浏览器插件助手
文章浏览阅读101次。NumPy是Python中最常用的科学数学计算库之一,它提供了高效的多维数组对象以及对这些数组进行操作的函数NumPy的核心是ndarray(N-dimensional array)对象,它是一个用于存储同类型数据的多维数组Numpy通常与SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用,用于替代MatLabSciPy是一个开源的Python算法库和数学工具包;Matplotlib是Python语言及其Numpy的可视化操作界面'''_数学中常用的环境有numpy
文章浏览阅读1.1w次。docker in docker说白了,就是在docker容器内启动一个docker daemon,对外提供服务。优点在于:镜像和容器都在一个隔离的环境,保持操作者的干净环境。想到了再补充 :)一:低版本启动及访问启动1.12.6-dinddocker run --privileged -d --name mydocker docker:1.12.6-dind在其他容器访问d..._dind