Skip to content

Instantly share code, notes, and snippets.

View stefri's full-sized avatar

Steffen Kram stefri

  • Mühlacker, Germany
View GitHub Profile
@stefri
stefri / letsencrypt_2017.md
Created October 19, 2017 13:07 — forked from cecilemuller/letsencrypt_2020.md
How to setup Let's Encrypt for Nginx on Ubuntu 16.04 (including IPv6, HTTP/2 and A+ SLL rating)

How to setup Let's Encrypt for Nginx on Ubuntu 16.04 (including IPv6, HTTP/2 and A+ SLL rating)

There are two main modes to run the Let's Encrypt client (called Certbot):

  • Standalone: replaces the webserver to respond to ACME challenges
  • Webroot: needs your webserver to serve challenges from a known folder.

Webroot is better because it doesn't need to replace Nginx (to bind to port 80).

In the following, we're setting up mydomain.com. HTML is served from /var/www/mydomain, and challenges are served from /var/www/letsencrypt.

@stefri
stefri / twilight.itermcolors
Created August 31, 2011 09:15
iTerm2 Twilight Color Scheme
<?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>Ansi 0 Color</key>
<dict>
<key>Blue Component</key>
<real>0.078821629285812378</real>
<key>Green Component</key>
<real>0.07883714884519577</real>
@stefri
stefri / template_changing_view.js
Created May 28, 2011 15:44
SC.TemplateChangingView
SC.TemplateChangingView = SC.TemplateView.extend(
/** @scope SC.TemplateChangingView.prototype */{
templateNameDidChange: function() {
SC.Logger.debug("Template name was set to " + this.get('templateName'));
this.rerender();
}.observes('template'),
/**
Called when the template property associated with this view changes.
TestApp.applicationMenu = SC.Object.create({
statechart: Ki.Statechart.create({
rootState: Ki.State.design({
initialSubstate: 'applicationMenuNotShowing',
applicationMenuNotShowing: Ki.State.design({