Skip to content

Instantly share code, notes, and snippets.

View v1nc3ntlaw's full-sized avatar

Vincent Lin (Sheng-Je Lin) v1nc3ntlaw

View GitHub Profile
@v1nc3ntlaw
v1nc3ntlaw / webapp.conf
Created July 9, 2017 13:46 — forked from kakipo/webapp.conf
Force Redirect HTTP to HTTPS on nginx behind ELB
# redirect http to https
set $redirect "";
if ($http_x_forwarded_proto != 'https') {
set $redirect "1";
}
if ($http_user_agent !~* ELB-HealthChecker) {
set $redirect "${redirect}1";
}
if ($http_host ~ "your-nifty-domain.com") {
set $redirect "${redirect}1";
@v1nc3ntlaw
v1nc3ntlaw / ufw.md
Created June 29, 2017 11:13 — forked from kimus/ufw.md
NAT and FORWARD with Ubuntu’s ufw firewall

UFW

I use Ubuntu’s Uncomplicated firewall because it is available on Ubuntu and it's very simple.

Install UFW

if ufw is not installed by default be sure to install it first.

@v1nc3ntlaw
v1nc3ntlaw / heroku_nginx_301.conf
Created September 21, 2014 15:49
heroku-buildpack-php heroku-php-nginx -C nginx_app.conf redirect all http to https
# https://devcenter.heroku.com/articles/http-routing#heroku-headers
# http://wiki.nginx.org/HttpCoreModule#.24http_HEADER
# redirect all http to https with 301
if ( $http_x_forwarded_proto = http ) {
return 301 https://$host$request_uri;
}
#!/bin/bash
threshold=80 # percent
total=$(free | grep "Mem:" | awk '{print $2}')
remaining=$(free | grep "buffers" | awk '{print $4}' | tail -n 1)
current=$(echo "scale=0;100-$remaining * 100 / $total" | bc -l)
if [ $current -gt $threshold ]
then
/etc/init.d/httpd stop
Passenger Standalone with Nginx
-----
command
passenger start -S /tmp/s.dev.socket -d
nginx config example
upstream s_dev_server {
@v1nc3ntlaw
v1nc3ntlaw / mysql-utf8mb4-barracuda
Last active August 22, 2020 00:09
MySQL using utf8mb4 and innodb_file_format Barracuda settings
[mysqld]
init_connect='SET collation_connection = utf8mb4_unicode_ci'
init_connect='SET NAMES utf8mb4'
character-set-server = utf8mb4
character-set-client = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake
innodb_file_format = Barracuda
@v1nc3ntlaw
v1nc3ntlaw / git-post-receive-hook-irc-notification.sh
Created August 20, 2012 06:32
use git post receive hook send irc notification
#!/bin/sh
#
# An example hook script for the "post-receive" event.
#
# The "post-receive" script is run after receive-pack has accepted a pack
# and the repository has been updated. It is passed arguments in through
# stdin in the form
# <oldrev> <newrev> <refname>
# For example:
# aa453216d1b3e49e7f6f98441fa56946ddcd6a20 68f7abf4e6f922807889f52bc043ecd31b79f814 refs/heads/master
@v1nc3ntlaw
v1nc3ntlaw / rbenv.sh
Created March 30, 2012 13:50
rbenv install ruby 1.9.3-p327 on Ubuntu 12.04 LTS for chef bootstrap
# rbenv setup
export RBENV_ROOT=/usr/local/rbenv
export PATH="$RBENV_ROOT/bin:$PATH"
eval "$(rbenv init -)"
@v1nc3ntlaw
v1nc3ntlaw / com.coverallcrew.firewall.plist
Created March 24, 2012 08:47 — forked from pgib/com.coverallcrew.firewall.plist
coverallcrew firewall start-up script for mac os to forward port 80 to local nginx on 8080
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.coverallcrew.firewall</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
@v1nc3ntlaw
v1nc3ntlaw / rbenv-install-system-wide.sh
Last active December 23, 2020 13:57
rbenv install ruby 1.9.3-p448 on Ubuntu 12.04 LTS
#
# Run as root
# $ bash <(curl -s https://raw.github.com/gist/1631411)
#
# Update, upgrade and install development tools:
apt-get update
apt-get -y upgrade
apt-get -y install build-essential git-core curl \
libssl-dev \