一、启动SFtp

话说小编最近爱上了vs code开发工具,一是方便敏捷,二是与逐浪CMS结合开发非常高效。

于是想配备一款FTP工具。

用上了大家推荐的sftp插件,就是下面这款:

作为一款FTP插件确实是很优秀,因为他提供了其它FTP插件所不具备的文件目录浏览功能,可视化操作非常方便。

安装它就是非常方便了,只要在扩展中,搜索:sftp,就能完成安装。

二、上手vs code SFTP插件

2.1 初始配置

安装好了sftp插件后,按f1ctrl+shift+p,呼出命令,输入sftp,就能配置ftp信息。

配置文件初始信息如下所示:

{
"name": "My Server",
"host": "localhost",
"protocol": "sftp",
"port": 22,
"username": "username",
"remotePath": "/",
"uploadOnSave": true
}

SFTP原理是这样的:首先本地要有一个项目文件夹,同时远程也有一个项目文件夹,然后通过配置文件来同步二者。

SFTP可以查看远程项目所有文件,但不能直接操作,必须操作本地项目文件,再同步到远程项目。

现在我们本地和远程均有一个文件夹“sftpFolder”,用VsCode打开本地文件夹“sftpFolder”,然后执行 ctrl+shift+p ,搜索 SFTP:Config ,回车后,会生成一个“.vscode/sftp.json”,这个就是配置文件。

同时,如下图左侧会多了一个“远程目录

2.2解决乱码问题

sftp插件,本身是支持ftp协议的,美中不足是对中文目录支持欠佳,默认会显示乱码,而作为中文开发这是很难接受的。

最后解决乱码的问题,就是在服务器端部署SFTP服务端来解决。

作为专注微软大数据的开发厂商,需要在windows server上部署sftp的方案,推荐可以采用FreeSSHD的解决方案。

FreeSSHD SFTP Server

http://www.freesshd.com/

freeFTPd 或者 freeSSHd 都可以设置 sftp 用户,但不能像 xlight 那样细分权限,都是读写权限!

freeSSHd 的 sftp,所有用户只有一个 sftp 的主目录。

freeFTPd 的 sftp,可以给不同的用户设定不同的目录。

freeSSHd 可以设置系统账号、公钥、密码的登录方式,不像 xlight 只能在密码、公钥里二选一。

freeFTPd 可以设置系统账号、密码、匿名的登录方式。

其中freeSSHd支持中文目录不乱码,是比较推荐的使用方法,缺点是只能支持一个目录

配置好了windows下的sftp服务器,则就可以自由的使用啦(详细可见本文后面)

三、SFTP配置

3.1常用配置

{
"name": "本地文件夹名称(可自定义)",
"host": "ip或域名",
"protocol": "协议:[sftp/ftp]默认ftp",
"port": 22,
"username": "username",
"password":"password",
"remotePath": "远程文件夹地址,默认/",
"context": "本地文件夹地址,默认为vscode工作区根目录",
"uploadOnSave": true,
"downloadOnOpen":false,
"ignore": [
"**/.vscode/**",
"**/.git/**",
"**/.DS_Store"
],
"watcher": {
"files": "*",
"autoUpload": false,
"autoDelete": false
}
}

配置文件不能写注释,所以这里说明一下其中几个属性:

  • uploadOnSave:本地更新文件保存会自动同步到远程文件(不会同步重命名文件和删除文件)
  • downloadOnOpen:从远程服务器下载打开的文件
  • ignore:忽略的文件(匹配的文件不会同步)
  • watcher:监听器(可以重命名文件和删除文件)
  • autoUpload:文件变更会自动同步(修改和重命名)
  • autoDelete:文件删除会自动同步

更多配置请看这里https://github.com/liximomo/vscode-sftp/wiki

3.2示例配置

一个例子:

{
"name": "test",
"host": "abc.com",
"protocol": "ftp",
"port": 21,
"username": "username",
"password":"password",
"remotePath": "/",
"uploadOnSave": true,
"ignore": [
"**/.vscode/**",
"**/.git/**",
"**/.DS_Store"
],
"watcher": {
"files": "*",
"autoUpload": false,
"autoDelete": false
}
}

多个sftp站点同时使用,注意context项不能相同:

[
{
"name": "server1",
"context": "project/build",
"host": "host",
"username": "username",
"password": "password",
"remotePath": "/remote/project/build"
},
{
"name": "server2",
"context": "project/src",
"host": "host",
"username": "username",
"password": "password",
"remotePath": "/remote/project/src"
}
]

四、SFTP使用

其中:Upload Folder 和 Download Folder 在 uploadOnSave 和 watcher 都关闭的情况下使用。

五、部署与使用文献

站长管理服务器必读:Ftp、Ftps与Sftp三兄弟的不同与区别以及部署全指引

https://www.z01.com/help/Cloud/3553.shtml

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

https://www.z01.com/help/Cloud/3552.shtml

用于Windows系统的免费SFTP服务器-Free SFTP Servers及各款软件功能对比

https://www.z01.com/help/web/3555.shtml

在Vs code中使用sftp插件以及连接windows远程sftp协议部署指导(解决vscode的sftp插件中文目录乱码问题)的更多相关文章

  1. IDEA 2020.1 插件市场无法找到官方的汉化包解决办法

    问题: idea 终于更新了2020.1版本,新增了好多的特性,官方也终于支持了中文语言包,但是下载后在插件市场无法找到官方的汉化包 解决: 去IDEA插件中心 (https://plugins.je ...

  2. 站长管理服务器必读:Ftp、Ftps与Sftp三兄弟的不同与区别以及部署全指引

    文章标题: 站长管理服务器必读:Ftp.Ftps与Sftp三兄弟的不同与区别以及部署全指引 关键字 : ftp,sftp,freesshd,ftps 文章分类: 教程 创建时间: 2020年3月23日 ...

  3. ubuntu下vscode安装go插件失败解决办法

    go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.io,direct go env -w GOSUMDB=gosum.io+ce6e ...

  4. 在vs code中使用ftp-sync插件实现客户端与服务器端代码的同步

    在vs code中使用ftp-sync插件实现客户端与服务器端代码的同步 下载安装 vscode-ftp-sync 插件. 安装方法1. Ctrl+Shift+P 输入 ext install [插件 ...

  5. VSCode调试Html中的脚本 vscode前端常用插件推荐,搭建JQuery、Vue等开发环境 vsCode 添加浏览器调试和js调试的方法总结 VS Code - Debugger for Chrome调试js

    一.背景 使用Visual Studio Code写了一个简单的Html页面,想调试下其中script标签里的javascript代码,网上查了一通,基本都是复制粘贴或者大同小异的文章,就是要安装De ...

  6. 解决vs code中golang插件依赖安装失败问题

    解决vs code中golang插件依赖安装失败问题 Installing github.com/nsf/gocode SUCCEEDED Installing github.com/uudashr/ ...

  7. VS Code 中使用 GitHub pull request 插件提交代码

    VS Code作为一个代码编辑器,受到很多人的喜爱:其中有很多非常有用的插件/扩展功能,也会极大的提高我们的工作效率. 这里介绍一下GitHub pull request,用来向GitHub提交在VS ...

  8. 解决 VS Code 中 golang.org 被墙导致的 Go 插件安装失败问题

    微软官方开发的 Go for Visual Studio Code 插件为 Go 语言 提供了丰富的支持.在 VS Code 中首次打开 Go 工作区后,VS Code 会自动检测当前开发环境为 Go ...

  9. visual studio code中使用emmet插件在.vue文件失效

    使用visual studio code编辑.vue文件时,emmet插件无法使用,可以通过以下两种试解决: 1.文件→设置,在右侧窗口添加以下代码: "emmet.syntaxProfil ...

随机推荐

  1. 分享一下我的Python自学历程,分享下我自己学习方法

    其实关于编程这事儿没有接触的那么早,大一的时候没什么关注点,有一门课是vb,一天天的,就抄抄作业啥的就完事儿了.当时也觉的自己不是学编程的料,想着以后估摸也不会干开发相关的工作. 我的自学历程 阴差阳 ...

  2. 国庆七天假 不如来学学Vue-Router

    Vue-Router 基本介绍 Vue-Router是Vue全家桶中至关重要的一个扩展化插件,使用它能够让我们的组件切换更加的方便,更加容易的开发前后端分离项目,目前Vue-Router版本已更新到4 ...

  3. C++ 多线程按顺序执行函数

    我们提供了一个类: public class Foo { public void first() { print("first"); } public void second() ...

  4. 关于布隆过滤器,手写你真的知其原理吗?让我来带你手写redis布隆过滤器。

    说到布隆过滤器不得不提到,redis, redis作为现在主流的nosql数据库,备受瞩目:它的丰富的value类型,以及它的偏向计算向数据移动属性减少IO的成本问题.备受开发人员的青睐.通常我们使用 ...

  5. HTML对溢出的控制:overflow

    用于对超出模块的内容进行控制 overflow的三种参数 1.visible(默认):溢出部分可见 2.hidden:溢出部分隐藏 3.auto:适当加入滚动条 overflow使用方法 1.常用 o ...

  6. 开发数学系统时,需要掌握的几个基于Web的数学框架

    在做数学系统时,经常要和数学公式打交道,这里介绍几个常用的基于Web的数学处理软件. 数学系统主要包括三类:(1)数学公式的显示,也就是如何使用web显示复杂的数学公式. (2)图像制作,例如长方形, ...

  7. Powerful Number 学习笔记

    定义 对于一个正整数 \(n\) ,若完全分解之后不存在指数 \(=1\) ,则称 \(n\) 为 \(\text{Powerful Number}\) . 可以发现的是,在 \([1,n]\) 中, ...

  8. Mybatis 一级缓存 (20)

    Mybatis中的一级缓存和二级缓存(本博文只是针对一级缓存说明) 概述 ORM框架一般都会有缓存机制,做为其中一员的Mybatis也存在缓存.功能是用以提升查询的效率和服务给数据库带来压力.同样的M ...

  9. Excel一对多查找

    很多人在Excel中用函数公式做查询的时候,都必然会遇到的一个大问题,那就是一对多的查找/查询公式应该怎么写?大多数人都是从VLOOKUP.INDEX+MATCH中入门的,纵然你把全部的多条件查找方法 ...

  10. 【数据结构与算法Python版学习笔记】树——平衡二叉搜索树(AVL树)

    定义 能够在key插入时一直保持平衡的二叉查找树: AVL树 利用AVL树实现ADT Map, 基本上与BST的实现相同,不同之处仅在于二叉树的生成与维护过程 平衡因子 AVL树的实现中, 需要对每个 ...