Skip to content

Instantly share code, notes, and snippets.

@yiichou
yiichou / estimates.js.coffee
Last active August 29, 2015 14:05
计算成都市两地间车程在三环内外的分布(片段)
get_distance = ->
map = new BMap.Map('allmap')
map.centerAndZoom(new BMap.Point(104.072, 30.663), 13)
old_ads = ... # 地点1的坐标
new_ads = ... # 地点2的坐标
old_point = new BMap.Point(old_ads[x],old_ads[y])
new_point = new BMap.Point(new_ads[x],new_ads[y])
@yiichou
yiichou / replace-google-fonts.php
Last active August 29, 2015 14:12
replace-google-fonts
<?php
/**
* Replace Google Fonts
* Use Qihoo 360 Open Fonts Service to replace Google's.
*
* @param $text
* @return mixed
*/
function ohMyFont($text)
@yiichou
yiichou / object-cache.php
Last active May 14, 2017 12:04
Use cache to speed up your wordpress on Aliyun ACE.
<?php
/*
I have changed it to use in Aliyun ACE.
Please keep attention.
More information -> http://yii.im/posts/how-to-use-cache-to-speed-up-your-wordpress-on-aliyun-ace
Modify by Ivan Chou at 01/07/2014
*/
/*
Plugin Name: Memcached
@yiichou
yiichou / ngrokd
Last active June 21, 2017 06:40
ngrokd manager shell
#!/bin/bash
# These setting need you to set.
TLSKEY=/path/to/your/domain.key
TLSCRT=/path/to/your/domain.crt
DOMAIN=your.domain
ADDR=listen_ip_or_empty
LOGFILE=/data/logs/ngrokd.log
PIDFILE=/var/run/ngrokd.pid
DESC=ngrokd
@yiichou
yiichou / kcptund
Last active August 20, 2018 01:07
Management tool of kcptun server with ssh -D socks
#!/bin/sh
### BEGIN INIT INFO
# Provides: kcptun
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Fast kcp tunnel proxy that helps you bypass firewalls
# Description: A secure socks5 proxy, designed to protect your Internet traffic via
# KCPTUN. KCPTUN is a simple UDP tunnel based on KCP.
#!/bin/bash
registry=registry.cn-hangzhou.aliyuncs.com
inner_registry=registry-internal.cn-hangzhou.aliyuncs.com
vpc_registry=registry-vpc.cn-hangzhou.aliyuncs.com
if [ $(uname -a | awk '{print $1}') != "Darwin" ]; then
ping -c 1 -W 1 $vpc_registry > /dev/null
if [ "$?" == "0" ]; then
registry=$vpc_registry
def verify_and_decrypt_session_cookie(session_value, secret_key_base = Rails.application.secret_key_base)
serializer = ActiveSupport::MessageEncryptor::NullSerializer
key_generator = ActiveSupport::KeyGenerator.new(secret_key_base, iterations: 1000)
secret = key_generator.generate_key('encrypted cookie', 32)
sign_secret = key_generator.generate_key("signed encrypted cookie")
encryptor = ActiveSupport::MessageEncryptor.new(secret, sign_secret, cipher: "aes-256-cbc", serializer: serializer)
encryptor.decrypt_and_verify(CGI::unescape session_value)
end