let’s encrypt: the https redirect problem [nginx]

let’s encrypt make HTTP requests to a domain for check the ownership.

But, if you have already HTTPS enabled and make a redirect for all HTTP requests like

if ($scheme = 'http') {
	rewrite ^ https://$server_name$request_uri? permanent;
}

then you run into a problem:

Sat Mar 5 16:31:07 CET 2016 Failed authorization procedure. blog.mameso.com (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://blog.mameso.com/.well-known/acme-challenge/rmKLoxxxxD7h4rxxxxF2wHexxxxLWAPGaxxxxI [213.111.221.123]: 403

So you need to exclude the HTTP reqests to „/.well-known/acme-challenge/*“:

location '/.well-known/acme-challenge' {
	break;
}
location '/' {
	if ($scheme = 'http') {
		rewrite        ^ https://$server_name$request_uri? permanent;
	}
	try_files $uri $uri/ /index.php?$args;
}

The try_files is for WordPress readable URIs.

Thats it – the next let’s crypt ssl-cert updates are running fine.

Anyone with the same problem or you have a better solution? leave a comment!

OSX: Dateisystem – erweiterte Attribute löschen

Nach dem manuellen extrahieren des „~/Library/Mail“ Ordners aus einem TimeMachine Ordner möchte Mail nicht mehr starten.

Die Konsole zeigt das es ein Filesystem Problem gibt – erweiterte Attribute aus dem TimeMachine Filesystem blocken den Zugriff durch „Mail.app“ .

Lösung:
Alle erweiterten Attribute entfernen. Sicherheitshalber noch ein chown und die Filesystemrechte mit dem Festplattendienstprogramm reparieren. Mail sollte dann wieder starten

$root # xattr -r -c /User/meinusername/Library/Mail


$ xattr --help
-c: deletes (clears) all xattrs
-r: act recursively

 

Opensource AdServer – Der eigene Manager für Werbung

Da ich mir aktuell verschiedene AdServer angesehen habe, hier eine kleine Auflistung der Server die ich gefunden habe.

  • Open-X heißt jetzt Revive
    • http://www.revive-adserver.com/
    • PHP 5.1.4+, extensions: zlib, pcre, xml, mysql and/or pgsql
    • MySQL 4.1+ oder Postgre 8.1+
    • GPL, Weiterentwicklung von „phpAdsNew“
    • Als kommerzieller Service auch hier: openx.com
  • Orbit Open AdServer
    • http://orbitopenadserver.com/
    • PHP 5.2.6+ (allow_url_fopen=on), extensions: mbstring, PDO-SQLite or SQLite, PDO-MySQL, SimpleXML, JSON
    • MySQL 4.1+
  • mAdserve
    • http://www.madserve.org/
    • optimiert für MobileApps – SDKs für iOS und Android vorhanden
    • OpenSource Variante wird nicht mehr weiter entwickelt und nun unter www.mobfox.com als Service angeboten
  • OASIS

Dann gibt es noch diverse Anbieter wie Google AdManager, DoubleClick (wurde von Google aufgekauft) und weitere. Eine Auflistung ist z.B. hier zu finden: www.sitepoint.com/7-great-ad-server-solutions

Grundlegend muss/sollte man jeden Adserver noch gegen Sicherheitslücken abhärten und diverse Anpassungen vornehmen, damit die Banner nicht durch einen AdBlocker geschluckt werden.
Das ist natürlich nur möglich, wenn man einen eigenen AdServer betreibt, statt den Service bei einem großen Anbieter mietet.

Gibt es noch einen relevanten Adserver der hier nicht erwähnt ist oder Facts die man wissen sollte?
Dann bitte einen Kommentar hinterlassen!