使用PAC文件实现浏览器自动代理

由于工作原因需要经常在不同的地方(办公室、家庭网络、机场酒店公共网络)接入到办公网络,而办公网络需要通过公司代理服务器才能访问互联网,同时公司IT部门提供了国内、海外等不同的代理服务器,这样就需要根据是否接入办公网络及访问对网址经常修改代理服务器(打开、关闭、修改不同对代理服务器等)。

目前各主流浏览器均支持Proxy Auto-Configuration (PAC) file自动设置代理,详细对配置指导可参考https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file

今天主要讨论根据接入网络和访问的目标网址设置不同的代理服务器策略。

  • 需求一:根据是否接入办公网络选择不同的Proxy策略

    1. 通过家庭、酒店WIFI未(通过VPN)接入公司网络,本机localhost地址通常是192.168.x.x;
    2. 通过家庭、酒店WIFI(通过VPN)接入公司网络时,本机localhost地址通常是127.0.0.1;
    3. 通过办公室WIFI接入公司网络和场景2类似;
  • 需求二:根据目标网址选咋不同的Proxy服务器;

    1. 如果访问公司内网则不想要代理服务器;
    2. 如果是访问海外网络则选择海外Proxy服务器;
    3. 其他情况均使用国内代理服务器。
  • 通过PAC自动选择代理服务器

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    function FindProxyForURL(url, host) {
    //如果没有通过VPN接入公司网络
    if (isInNet(dnsResolve('localhost'),'192.168.0.0','255.255.0.0') ||
    dnsResolve('localhost') != '127.0.0.1' // 不同对公司网络可能有差异,可以使用nslookup localhost 查询
    ) {
    return 'DIRECT';
    }

    //如果访问的时公司内网
    if (shExpMatch(host, "*.mycompany.com")) {
    return 'DIRECT';
    }
    // 如果访问对的时海外网址使用海外Proxy
    if (shExpMatch(url,'*.google.com*') || shExpMatch(url,'*.github.com*') ) {
    return 'PROXY proxy_uk.mycompany.com:8080' +
    'PROXY proxy_hk.mycompany.com:8080';

    }else { //默认使用国内proxy,如果proxy不同则不使用
    return 'PROXY proxy_cn.mycompany.com:8080;' +
    'DIRECT'
    }
    }
  • 在浏览器设置PAC文件 各家浏览器均可以使用扩展或者命令参数设置PAC文件。这里推荐使用Proxy-Switcher扩展,该扩展支持Chrome/Edge/Firefox浏览器,具体参考:https://mybrowseraddon.com/proxy-switcher.html

非暴力沟通读书笔记(二)

非暴力沟通过程中除了报答自己的感受、需要和请求外也许要关注对方,也许要想对自己一样观察、感受对方,了解对方的需求和请求

  • 体会他人对感受和需求
    • 在体会他人的感受和需要是不要基于发表自己对看法、判断和建议等。
  • 给他人反馈
    • 在倾听到他人对感受、需求和请求等需要给予他人反馈,主动表达我们的理解。如果我们理解正确可以帮助对方意识到他们他们要表达对意思;如果我们理解不到位,对方则可以继续补充。
    • 一般来说一个人讲话时如果带有明显对情绪时他一般会期待得到反馈。即使在不善于表达情感的人之间只要用心体会他人对感受都会促进两者之间关系,例如:中年儿子和年迈对父亲之间。
  • 保持关注
    • 我们需要在为他人表达创造条件,确保我们已经充分对观察、感受对方对需求和请求时再给予他人的建议,如果过早给对方建议,没有让对方体会到我们已经真正理解和体会到对方对感受了,对方往往会认为我们建议是敷衍的,或者是否能真正发挥作用。
  • 如果当我们痛苦的无法倾听,这说明我们也许要别人的关心,请大声说出你对感受、需要和请求。

非暴力沟通不是一个沟通对技巧,是发自内心的爱或者真诚的希望改善和周围人关系。

非暴力沟通读书笔记(一)

非暴力沟通中强调合理表达诉求,而不是指责、批评或者抱怨对方对行为。例如:

  • 案例一 > 我很生气,你惹我不高兴了!

    更好一些对表达是: > 你约会迟到了,我很生气。

    但是上述表达中表达了自己对感受,但是指责了对方的行为,需要将指责对方的行为修改为表达自己对诉求: > 我很生气,我希望你约会能按时到,这样我们就有时间一起吃饭,还可以看一场电影。

  • 案例二 > 如果你下次在这样做事情,你不如不做!

    需要将上述对沟通方式调整为表达自己对感受,并说出自己对需求/诉求:

    我很失望,我希望你在涮碗的同时也把餐桌擦干净,这样我就不需要做这些了。

我们的愤怒、不高兴、失望等负面情绪往往是因为我们的期望没有得到满足,在沟通过程中如果只是通过批评、吼叫等行为表达了自己的情绪,而不是通过非暴力对方式表达自己对诉求/需求。在听到不中听对话我们往往会产生以下行为: 1. 认为自己犯了错,而产生自责或这内疚的情绪 2. 指责对方,或者驳斥对方 3. 了解我们对感受和需要 4. 用心体会他人对感受和需要

因此在沟通过程中表达自身对感受和需要,倾听对方对感受和需要开始非暴力对沟通。

解决hexo无法使用本地图片问题

转载自:http://www.manongjc.com/detail/9-bayyqoeqtjoljpu.html

版本:Hexo 3以上  

最近搭建hexo博客时遇到了图片部署后不显示的问题,如图:

示例图片

上网找了很多方式都没有完美解决问题,后来查看了官方文档后终于解决了问题(完美解决),现在贴出来如下。建议以后大家遇到了问题也先去看看官方文档:https://hexo.io/zh-cn/docs

解决方案如下:

  1. 在根目录下配置文件_config.yml 中有 post_asset_folder:false改为true。这样在建立文件时,Hexo会自动建立一个与文章同名的文件夹,这样就可以把与该文章相关的所有资源(图片)都放到那个文件夹里方便后面引用。如这里我放了一张test.jpg的图片。

  2. git bash安装插件:

    1
    npm install https://github.com/7ym0n/hexo-asset-image --save
    使用这个插件来引入图片(这是个修改过的插件,经测试无问题),而不是网上那些方法里说的用传统md语法相对路径的方法。

  3. 插入图片时用这种方式:

    1
    {% asset_img test.jpg This is an test image %}
    其中test.jpg就是你要引用的图片,我这里就是test.jpg,后面的This is an test image是图片描述,可以自己修改。

  4. 这样就能成功显示了,测试下吧:hexo cl && hexo g && hexo d

2020-8-13日更新

1
2
3
2. git bash安装插件:
``` shell
npm install https://github.com/7ym0n/hexo-asset-image --save

使用这个插件来引入图片(这是个修改过的插件,经测试无问题),而不是网上那些方法里说的用传统md语法相对路径的方法。 ```

将上面命令替换成: npm install hexo-simple-image --save 在markdown文件中使用 ![](./dir/image.png) 在图片路径钱必须加上"./",否则hexo g生成文件时会报错。

公有云厂家的混合云产品

2017年以前公有云厂家和私有厂家是半推半就的竞争关系。每家云厂商根据自己的业务强项推出了不同对混合云产品,业界对混合云对定位也不统一。

  • AWS
    • AWS认知的混合云是基础设施对混合云,逐步到服务级对混合云部署;
  • Azure
    • Azure认知的混合云是Azure Stack + Azure对组合,混合云是Azure在客户机房对延伸;
  • Google
    • Google认知对混合云就是基于容器的Anthos,通过容器实现基础设施级应用部署混合云;
  • VMware
    • 放弃公有云市场,发挥自身SDDC优势,拥抱公有云厂商的基础设施,和公有云厂商形成了优势互补,另一方面积极补齐私有云侧容器能力;

2019年Google收购CloudSimple并于2020年5月推出基于CloudSimple的Google VMware Engine,Azure也和VMware达成和解于2020年5月推出了由Azure自研的Azure VMware Solution;公有云厂商对混合云战略逐步清晰。

  • AWS
    • 基础设施的+服务混合部署:加速outposts对进度,逐步将高级服务能力下移到outposts;继续和VMware合作,推出基于EBS对裸金属实例;
  • Azure
    • 和VMware和解、IaaS基础设施由vMware解决方法完成,Azure Stack无重大更新;聚焦PaaS,通过Azure Arc 和App 服务组合打造应用混合部署能力;
  • Google
    • 推出 Google VMware Engine补齐IaaS混合云能力;和Anthos组合成IaaS+PaaS完整对混合云解决方案。

使用marp和pandoc写作slide

使用marp写作slide

在vscode 中安装marp 插件即可在在vscode中使用markdown书写slide,写作PPT过程可以专注有书写内容,如果PPT对排版要求比较简单可以按照marp对语法(markdown对语法扩展)直接进行简单排版。Marp支持简单对水平排版,和自定义语法图文排版,如果材料以图和关键字为主则Marp可以较好支持书写和排版。如果文件较多、排版较为复杂则需要将输出结果导出到PPT中使用PPT模板和排版工具快速完成排版。

使用Marp写作Slide

Marp语法请参考:https://marpit.marp.app/markdown

导出成PPT

写作完成slide之后,如果对排版要求比较简单可以将markdown导出成PDF或HTML文档;Marp也支持直接导出成PPT文件,由于Marp导出对PPT文件是将文件生成为图片再将图片打包成PPT文件,该PPT文件是无法编辑内容,如果需要在PPT中重新排版就需要借助pandoc工具。 - 安装pandoc工具 - windows在https://www.pandoc.org/ 下载安装文件完成安装; - linux 使用软件仓库可直接安装pandoc - 配置potx模板 在https://templates.office.com/中选择喜欢的模板,将模板保存到本地工作目录备用。建议在PPT中视图-〉幻灯片母板中调整模板,将文本框调整成自动缩放文字。 - 使用pandoc将markdown文件转成pptx文件

1
pandoc -f markdown -t pptx --reference-doc=template.potx -o output.pptx input.md
### 使用PPT调整排版 使用布局(layout)功能快速调整排版

重新开始

重新开始

重新开始第一篇,坚持!:)