日语 科学上网

  |  
阅读次数
  |  
字数 177
  |  
时长 ≈ 1 分钟

由于国内的特殊网络环境原因,有些网站需要开启科学上网后才可以访问。

本次小编介绍你们一个非常棒的科学上网工具,点击以下链接进去注册后,选择适合自己的套餐进行购买,然后根据官网的指示进行操作安装软件进行使用即可。

小编是使用了一百多块的C套餐,一个月包含70G的流量,速度很快,路线很多,刷youtube基本无压力。

科学上网:(https://shadowflys.com/user/reg.php?aff=38329632

该工具为小编个人推荐,如果需要购买请在官网了解清楚后再入手哦。

Mac 使用iMovie和actime进行视频剪辑

  |  
阅读次数
  |  
字数 1,654
  |  
时长 ≈ 6 分钟

最近因为有开始在公号上面写一些双语文章,文章大概内容就是音频+双语互译的形式。
所以在想能不能试着把做好的文章,做成视频文件来播放,同时也可以在视频网站上面投稿。
下面就用我所使用的制作环境开始介绍下。
本人使用的是MacOS。

制作语音视频

首先,我们需要将准备好的mp3文件做成一个语音视频,然后在视频里面可以添加一个固定的背景图片,这样会使人看起来比较舒服。

所以这里我准备的有:

  1. 语音文件:そんなはした金いらないって言ってんの.mp3
  2. 视频制作软件:iMovie

    Read More

GoogleAdsense 申请以及使用填坑

  |  
阅读次数
  |  
字数 1,355
  |  
时长 ≈ 5 分钟

记录一下之前几次连续申请GoogleAdsense广告主的失败原因以及申请下来之后使用的一些需要注意的问题。

  1. 第一次申请,需要在上面的官网上进行登录,如果没有google账号的还需要另行申请。
    登录完成之后按照他的提示申请广告主审核,这时候会给一段代码让你放到你的网站的页面的<head></head>标签之内,当你完成了设置之后google会进行审核。
    在这里需要注意的是,审核时,只需要将一个首页页面的head标签里面增加提供的代码即可,不然有很大机会审核不通过。

  2. 等审核通过之后,在GoogleAdsense页面即可看到审核通过的提示,然后按照提示创建广告,完成之后将代码放到任意你想要展示广告的页面里面即可。
    如果自动广告,则不用注意太多,但是如果是自己创建的广告单元,则需要注意一点。
    放置广告的地方,需要单独创建一个空白的div标签来展示广告,不然随便放置,可能会展示不成功。

    Read More

Sentinel 阿里高可用防护流量管理框架接入

  |  
阅读次数
  |  
字数 638
  |  
时长 ≈ 3 分钟

使用Docker部署Sentinel控制台

进入我的 github仓库 ,clone到本地后,进入sentinel目录,具体部署操作请看README.md。
启动后进入 http://localhost:8848 ,即可看到控制台首页。

项目接入(web层)

以下以springboot程序为例。

1)新增sentinel的starter

1
2
3
4
5
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<version>0.1.0.RELEASE</version>
</dependency>

Read More

Oracle Package 包说明和包体

  |  
阅读次数
  |  
字数 801
  |  
时长 ≈ 4 分钟

该文转自 forever杨’s Blog - Oracle Package 包说明和包体

1
2
在包中定义的函数,包体中实现的时候,函数名、参数名、类型都要一致,否则报错。
在创建基于自定义函数时, 指定 `deterministic` 参数,再创建函数索引,就没有问题了。

定义包说明

1
2
3
4
5
6
7
8
9
10
11
CREATE OR REPLACE PACKAGE WX_CRYPTO IS
-- 定义 DES encrypt 函数
FUNCTION DES_ENCRYPT(INPUT_STRING IN VARCHAR2) RETURN VARCHAR2;
FUNCTION DES_ENCRYPT(INPUT_STRING IN VARCHAR2, KEY_STRING IN VARCHAR2)
RETURN VARCHAR2;

-- 定义 DES decrypt 函数
FUNCTION DES_DECRYPT(INPUT_STRING IN VARCHAR2) RETURN VARCHAR2 DETERMINISTIC;
FUNCTION DES_DECRYPT(INPUT_STRING IN VARCHAR2, KEY_STRING IN VARCHAR2)
RETURN VARCHAR2 DETERMINISTIC;
END WX_CRYPTO;

Read More

Navicat 使用Dropbox与NavicatCloud搭建数据库环境自动备份

  |  
阅读次数
  |  
字数 594
  |  
时长 ≈ 2 分钟

在工作中,不同项目中有不同的数据库连接环境以及数据库执行脚本,如果单纯使用记事本备忘的方式存储这些配置以及脚本会显得颇为复杂。
特别是在跟换机器的时候,又要重新配置一番,显然这样的方式操作起来很不方便。
在这里分享一下自己使用的数据库环境备份方式。

软件安装

  1. Navicat Premium(数据库开发工具)
  2. Navicat Cloud账号(数据库配置以及脚本同步工具)
  3. Dropbox(文件同步工具)
  4. ShadowSocks(代理工具)

操作

  1. 打开ShadowSocks,开全局模式,因为Dropbox以及Navicat Cloud账号注册需要使用代理,不然无法使用。

    Read More

IDEA 包冲突

  |  
阅读次数
  |  
字数 66
  |  
时长 ≈ 1 分钟

IDEA报包找不到,类找不到的情况下,先检查是否包冲突。

操作如下:

  1. 点击项目 Project Structure -> Modules -> 项目名 -> Dependencies

  2. 删掉所有非Maven开头的包,点击OK按钮。

  3. 点击侧边栏,Maven projects -> Reimport All Maven Projedts

NGINX 反爬策略

  |  
阅读次数
  |  
字数 221
  |  
时长 ≈ 1 分钟

1)配置agent_deny.conf

在nginx的conf目录下新增agent_deny.conf配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot|Catall Spider|AcoiRobot|Yisou|bingbot|360Spider") { 
return 403;
}

if ($http_user_agent ~ "WinHttp|WebZIP|FetchURL|node-superagent|FeedDemon|Jullo|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|MJ12bot|heritrix|EasouSpider|Ezooms|BOT/0.1|YandexBot|FlightDeckReports|Linguee Bot|iaskspider|^$") {
return 403;
}

if ($request_method !~ ^(GET|POST)$) {
return 403;
}

if ($http_user_agent ~* (Python|Wget|Scrapy|Spider)) {
return 403;
}

2)修改反向代理配置文件

在具体的location下面配置 include agent_deny.conf
如:

1
2
3
4
5
6
7
8
9
10
11
12
13
# Server
server {
listen 80;
server_name localhost;
charset utf-8;

location / {
# 此设置在 http, server, location 节点都可以设置;设置了 nodelay 将不会等待
limit_req zone=ratelimit burst=20 nodelay;
include agent_deny.conf;
proxy_pass http://127.0.0.1:8080/java-web;
}
}

Vue webpack打包src路径问题

  |  
阅读次数
  |  
字数 599
  |  
时长 ≈ 3 分钟

使用vue的时候,因为图片路径为动态数据,下面这样直接将数据传入元素,编译输出后路径将会是原始相对路径的数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<template>
<div id="cover-container">
<template v-for="(cover,index) in coverList">
<div :key="index" @click="openPage(cover.url)" class="cover">
<template v-if="index === 0">
<span class="cover_title">{{cover.title}}</span>
<img v-bind:src="cover.banner" class="cover_img_top">
</template>
<template v-else>
<img v-bind:src="cover.banner" class="cover_img_other">
</template>
<span class="cover_desc" v-html="cover.desc"></span>
</div>
<span v-if="index!=coverList.length-1" :key="index" class="line"></span>
</template>
</div>
</template>

Read More