cURL error 60: SSL certificate problem: unable to get local issuer certificate

Auf einem frischen Windows System mit installiertem PHP7 wollte ich ein neues Symfony Projekt starten.

$ php symfony new projektname

  [GuzzleHttp\Exception\RequestException]
  cURL error 60: SSL certificate problem: unable to get local issuer certificate

Doch ich erhielt die Fehlermeldung cURL error 60: SSL certificate problem: unable to get local issuer certificate vom Paket GuzzleHttp.

Die Lösung ist denkbar einfach. Die Datei cacert.pem von diesem Link (http://curl.haxx.se/ca/cacert.pem) herunterladen und speichern. In meinem Fall habe ich sie in c:\php\cacert.pem abgelegt.

Anschließend muss in der php.ini der Parameter curl.cainfo auf die heruntergeladene Datei verweisen. Bei mir sieht das dann so aus:

...

[curl]
curl.cainfo = "c:\php\cacert.pem"

...

Nginx Status Seite aktivieren

Genau wie beim Apache2 gibt es auch für den Nginx eine Status Seite, die Informationen zur Auslastung des Servers in Echtzeit bereitstellt. Anhand dieser Informationen lässt sich nicht nur die Konfiguration des Servers optimieren, sondern auch ein Monitoring mittels Nagios implementieren

Vorraussetzungen

Damit man die Status Seite aktivieren kann, muss Nginx mit dem HttpStubStatusModule Modul installiert sein. mit folgendem Befehl kann man das überprüfen.

$ nginx -V 2>&1 | grep -o with-http_stub_status_module
with-http_stub_status_module

Wenn die Ausgabe wie oben aussieht, ist das Modul installiert. Hinweis: Bei der Installation über die Paketquellen von Ubuntu, wird das Modul automatisch mit installiert.

Nginx Konfiguration

Zum Aktivieren einer Status Seite genügt es den folgenden Code innerhalb eines server {..} Blocks hinzuzufügen.

        location /nginx_status {
          stub_status on;
          access_log   off;
          allow 10.0.0.2;
          deny all;
        }

Hinweis: Die IP Adresse 10.0.0.2 entspricht dem Client/Server, der die Status Seite aufrufen will.

Anschließend muss die Konfiguration neu eingelesen werden.

$ sudo service nginx reload

Ergebnis

Beim Aufruf der Seite http://servername/nginx_status sollte das Ergebnis in etwa so aussehen.

Active connections: 13 
server accepts handled requests
 587 587 1796 
Reading: 0 Writing: 3 Waiting: 2

Varnish Konfiguration (VCL Dateien) testen

Eine Änderung an den Konfigurationsdateien von Varnish kann schnell zu Problemen führen. Ähnlich wie beim Apache, kann man auch beim Varnish Server die Konfigurationsdateien überprüfen.

$ varnishd -C -f /etc/varnish/default.vcl

Im Fehlerfall zeigt der vorstehende Befehl Zeilennummer und Ursache an.

VT-x/AMD-V-Hardwarebeschleunigung nicht verfügbar – Windows 10

In den meisten größeren Projekten, arbeite ich mit Vagrant. Somit kann man schnell die gewünschte Umgebung – sehr nah an der Liveumgebung – für sein Projekt erstellen und mit dem Team teilen. Nach dem Upgrade von Windows 7 auf Windows 10 stand ich nun vor dem Problem, das über die Vagrant Umgebung keine 64bit Gäste mehr gestartet werden konnten. Virtualbox meldete immer:

VT-x/AMD-V-Hardwarebeschleuniger ist auf ihrem System nicht verfügbar. Der Gast wird keine 64Bit fähige CPU erkennen und daher nicht booten können„.

Im BIOS war die VT-x Unterstützung noch aktiviert. Das Problem musste also mit Windows 10 zusammenhängen. Nach kurzer Recherche fand ich die Info, das die VT-x Unterstützung bei installiertem Microsoft Hyper-V für andere Programme wie Virtualbox oder VMWare geblockt wird. Ich habe dann unter „Windows-Features aktivieren oder deaktivieren“ das Häkchen bei Hyper-V entfernt.

windows-features-hyperv

Nach einem Neustart funktionierte dann auch meine Vagrant Umgebung wieder.

PHP 5.6 auf Ubuntu 14.04 installieren

PHP 5.6 ist unter Ubuntu 14.04 (noch) nicht einfach aus den angebotenen Quellen zu installieren. Abhilfe bietet hier wieder ein PPA.

Ist auf dem betreffenden System noch kein PPA installiert, muss das Paket python-software-properties installiert werden.

$ sudo apt-get update && sudo apt-get install python-software-properties

Jetzt kann die Paketquelle hinzugefügt werden.

$ sudo add-apt-repository ppa:ondrej/php5-5.6

Nach einem Update der Paketquellen kann php5 installiert werden.

$ sudo apt-get update
$ sudo apt-get install php5

Fragt man jetzt nach der PHP Version, sollte das Ergebnis in etwa so aussehen.

$ php5 -v
PHP 5.6.16-2+deb.sury.org~trusty+1 (cli)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies