反向ssh
什么是ssh?SSH 为 Secure Shell 的缩写,SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。 什么是ssh反向连接?反向连接是指主机A(受控端)主动连接主机B(控制端),在主机A和主机B之间建立一个远程连接,通过这个连接主机B可以主动的向主机A发送一些请求。 应用场景 平时我们登录远程服务器,一般使用ssh登录远程服务器 现在我们想通过远程服务器反向操作登录本地PC,但由于一般本地PC没有公网IP,导致远程服务器使用正常ssh命令无法登录PC,这个时候就需要使用ssh反向连接功能。 操作步骤 使用ps -ef | grep sshd 确定主机A,和主机B都运行了sshd。如果没有运行sshd,则需要执行sudo apt-get install openssh-server 安装openssh-server 主机A执行命令与服务器建立连接:ssh -CqTfnN -R :11111:localhost:22...
docker run的命令讲解
当我们运行一个docker run 的时候,里面有许多命令,如果需要加卷来映射本地路径需要怎么做,下面图解一条相对完整的docker命令: 1docker run -d --name webl -p 80:80 -v /usr/share/nginx/html nginx /usr/share/nginx/html下产生新的目录html 运行的端口为80
css动画的属性及基础用法
css3出现以后,css的动画就使用的特别广泛,下面是我在使用css3动画的一些理解。 css3动画的基础用法123456789@keyframes 动画名称{ 动画的操作属性}使用动画的标签{ animation-name:动画名称;/*需要执行的动画的名字*/ animation-duration: 3s;/*所需要的时间*/ animation-iteration-count: infinite;/* 执行次数*/ ...
记一次rollup打包过程
安装roolup1yarn add -D rollup 安装其他插件1yarn add -D @rollup/plugin-commonjs rollup-plugin-terser rollup-plugin-typescript2 插件说明: 123@rollup/plugin-commonjs:让rollup知道项目用了那些依赖,打包的时候不要忘了rollup-plugin-terser:压缩代码rollup-plugin-typescript2:让rollup可以看懂TS代码 rollup配置文件新建rollup.config.js配置文件 12345678910111213141516171819202122232425// 导入依赖 const { terser } = require('rollup-plugin-terser') const commonjs = require('@rollup/plugin-commonjs') const typescript =...
如何在npm中发布自己开发的插件
注册npm账号,打开 https://www.npmjs.com/signup 进行注册初始化需要上传的包,新建一个文件夹,运行1npm init 根据提示会在文件夹中生成一个package.json文件,内容如下: 123456789101112{ "name": "xyj-3d", #包名 "version": "1.0.3",#版本号 "description": "cesium-plus",#信息 "main": "xyj.min.js",#入口文件 "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author":...
浏览器跨域消息传递
父页面给子页面传值12const iframe = document.getElementId('iframe')//iframe容器iframe.contentWindow.postMessage({msg: '来自父页面的消息'}, "*"); 子页面接收消息123 window.onmessage = function(event){ console.log(event.data.msg) // 来自父页面的消息} 子页面给父页面传递消息1window.parent.postMessage({msg: '来自子页面值'}, "*"); 父页面接收消息123window.onmessage = function(event){ console.log(event.data.msg) // 来自子页面值}
vue打包后出现文件过大加载速度过慢问题解决方案
我们在处理网站加载速度过慢问题是,首先想到的是cdn加速,还有一种解决方案,这种方案作用于nginx服务。 下面是我做网站配置的解决方案: 新建一个vue项目,打包之后发现会有一个文件特别大,特别是引入的插件越多,这个文件就越大,查阅资料发现这是我们的node_modules打包之后生成的文件。webpack配置可以将文件打包为.gz文件,传入nginx服务器之后,开启相关配置,他就会自动解压,这是这个文件就会成倍的减小。webpack的配置如下: 123456789101112131415//js html css配置configureWebpack: (config) => { /* gzip压缩 */ const productionGzipExtensions = ['html', 'js', 'css'] config.plugins.push( new CompressionWebpackPlugin({ filename:...
dockerfile的说明
docker用的好,dockerfile配置少不了,配置好dockerfile才能打包一个正确的镜像以供使用。 #第一行配置镜像的依赖,比如这个镜像是使用go语言开发,选择开发版本,as build是一个文件名称,后面有用到 1234567891011121314151617181920212223FROM golang:1.18.3 as build#WORKDIR关键字 设置工作路径WORKDIR /build#把项目所有文件复制到镜像的根目录文件夹中ADD . ./# 设置Go语言的环境变量,打开Go Module模式。设置包下载源,有利于快速下载包ENV GO111MODULE=on \GOPROXY=https://goproxy.cn#下载go.mod里面的包RUN go mod download#编译RUN go build -o gin_docker .#打开端口EXPOSE 8000#运行项目ENTRYPOINT ["./gin_docker"]
java配置图片访问映射
建立配置文件,使用config注解,代码如下: 123456789101112@Configurationpublic class ImgConfig implements WebMvcConfigurer { //@Value可以将配置文件的内容自动注入到属性内 @Value("${savePath.profilePhoto}") private String profilePhotoPath; //图标物理存储路径 @Value("${savePath.profilePhotoMapper}") private String profilePhotoMapperPath; //图标映射路径 @Override public void addResourceHandlers(ResourceHandlerRegistry registry){ ...
mobx的介绍和使用
什么是mobox是一个用来管理状态的库,如果被观测组件发生改变,会自动渲染有关页面,告别setState;mbox编程的3个重点: 1.observer观测器:带有观测器的react组件或者属性被mobx实时观测 2.observable可观测对象:由mobx建立的可观测对象 3.action更新事件:标识观测对象的改变事件 mobox的安装和使用1.安装 12npm install mobx,mobx-react-lite --save根目录新建store文件并在store中新建index.js和test.Store.js 123456789101112131415161718192021222324252627282930313233343536373839// test.Store.js module import { makeAutoObservable } from 'mobx' class TestStore { userInfo = {} ...