Archiv der Kategorie: Programmierung

Programmiersprachenunabhängige Berichte über kurrioses Verhalten oder Hilfestellungen bei kniffligen Themen.

WP API – Basic Auth geht nicht [PHP 5.5] [PHP FastCGI] [Odin Plesk Panel]


In einem meiner letzten Projekte, dem Relaunch der Seite mathehilfe24.de, sollte zum anbinden einer APP eine API eingebunden werden. Dazu setzten wir auf die WP API für JSON.

Nun musste der User authentifiziert werden, damit wir bestimmen konnten, ob nur die kostenfreien Abos zur Verfügung stehen oder der User ein Abo hat und somit alle Videos sehen kann.

Also für WP API noch schnell das Zusatz-Plugin WP JSON Basic Auth installiert.

WP API – Basic Auth geht nicht, trotz allem

Recht schnell stellte sich heraus: Das Plugin tat nicht ganz was es soll. Also zumindest klappte die Authentifizierung nicht.

Nach etwas Analyse fand ich heraus, dass aufgrund des eingesetzten FastCGI eine Erweiterung der .htaccess-Datei (welche über WP generiert wird) nötig war:

Nun klappte die Authentifizierung immer noch nicht. Ein kleines PHP Test-Script wiederung lief mit dieser Anpassung. Ich war verwirrt.

Debuggen zeigt: Plugin muss erweitert werden

Nach einem kurzen Debugging des WP JSON Basic Auth-Plugin wurde mir klar: Das Plugin muss erweitert werden, damit es mit PHP FastCGI funktioniert. Es müssen zwei Zeilen Quellcode hinzugefügt werden.

Lösung steht per Merge Request bereit

Ich habe natürlich das Plugin angepasst und die Erweiterung per Merge Request eingereicht, sodass das Plugin hoffentlich bald aktualisiert wird und die Anpassung für jedermann zu haben ist.

Hier seht ihr wie es geht: https://github.com/WP-API/Basic-Auth/pull/26/files

 

Windows – Große Textdatei auftrennen

bitconnect

Heute musste ich eine 1.8GB große „access-log“ Datei auf einem Windows-Gerät öffnen und einen gewissen Zeitraum daraus suchen um Webseiten-Zugriffe zu prüfen.

Notepad++ ist zumeißt das Tool meiner Wahl, wenn es um Text-Dateien geht. Doch bei 1.8 GB hat Notepad++ nur noch mitgeteilt, dass die Text-Datei schlicht zu groß ist.

Ich habe kurz gesucht und bin auf folgende Zeile gestoßen, die in der Powershell dazu führt, dass Text-Dateien beliebiger Größe in verschiedene Text-Dateien aufgeteilt wird. Dazu wird Zeilenweise vorgegangen.

Gefunden hab ich die Zeile hier: http://stackoverflow.com/questions/1001776/how-can-i-split-a-text-file-using-powershell

Angular JS vs. jQuery #1: Live-Anzeige

Genesis Mining

Der letzte Blog-Beitrag ist gechillte zwei Jahre her, wird also mal wieder Zeit für einen neuen Eintrag.

Heute geht es um einen ganz kleinen, aber praktischen Vergleich zwischen AngularJS und jQuery. Und zwar anhand einer ganz einfachen Eingabe-Maske. Die Daten die man eingibt, sollen direkt angezeigt werden.

jQuery: Eingabedaten live anzeigen

Folgenden Code habe ich benötigt, um die Live-Anzeige der Eingabedaten zu realisieren:

Natürlich kann man hier wesentlich bessere Optiken verwenden usw. Mir ging es allerdings nur um den technischen Vergleich.

AngularJS: Eingabedaten live anzeigen

Und nun zur AngularJS-Umsetzung. Hier habe ich folgenden Code umgesetzt:

Fazit: AngularJS vs. jQuery bei Live-Anzeige von Eingabedaten

Wie wir sehen, reduziert sich das benötigte JavaScript von 13- auf 5 Zeilen Quellcode. Im AngularJS-Code könnte ich sogar noch zwei Zeilen einsparen, ohne groß unleserlich zu werden. Auch die „Komplexität“ des Codes sinkt gewaltig.

Natürlich steigt bei AngularJS zugleich das Markup im HTML etwas an, das seht ihr selbst, das will ich auch nicht verheimlichen.

Ich hoffe mir fallen demnächst noch ein paar coole Vergleiche ein. Ich selbst setze aktuell sehr viel AngularJS ein, aber empfinde beide Frameworks als für Ihren Aufgabenbereich geeignet. Es ist die „Idee“, die beide unterscheidet. Aber darauf gehe ich demnächst (hoffentlich) näher ein.

WordPress – Seitenaufruf endlos bzw. sehr langsam

bitconnect

Es ist -seines Genres- der wohl größte Blog Deutschlands und ich bin dort im Technik-Team. Letzte Woche gab es einen „Ausfall“. Soetwas habe selbst ich, nach nun fast 10 Jahren WordPress, nicht erlebt. Jede aufgerufene Seite lädt rund eine Minute und bricht dann ab, wenn der User nicht eh schon gegangen ist.

Weiterlesen

EcliseAntBuildResult

Eclipse: Deployment eines PHP-Projektes mithilfe eines ANT-File

Genesis Mining

PHP-Projekte entwickle ich nur noch mit Eclipse als IDE. Quellcode geht eh nicht ohne SVN. Doch wenn IDE, dann auch bitte mit autmatischem Deployment. Doch wie kann das Projekt, bzw. nur der trunk-Ordner automatisch per FTP hochgeladen werden?

Weiterlesen