oAuth mit XAMPP unter Windows nutzen

For an english version of this article scroll down!

Leider ist es nicht ohne weiteres möglich, die oAuth PECL Erweiterung für PHP in XAMPP zu verwenden, da XAMPP immer noch mit Apache VC6 ausgeliefert wird. Folglich ist auch PHP in der VC6 Variante enthalten. Leider wird die oAuth Erweiterung jedoch seit einiger Zeit nur noch als VC9 Variante angeboten und eine alte kompilierte VC6 Version ist nicht aufzutreiben.

Da ich aber letztens in einem meiner Projekte die Authentifizierung an einer API (DropBox) per oAuth durchführen musste, blieb mir nur die Wahl, entweder um zu satteln und unter Linux zu entwickelt (igittigitt *duck*), oder aber die Erweiterung unter Windows zum laufen zu bringen.

Von Pierre Joye bekam ich den Tipp, doch einfach Apache VC9 und PHP VC9 zu installieren (liegt ja irgendwie auch nahe…). Auf die Vorzüge von XAMPP wollte ich aber nicht verzichten, weshalb ich einfach mal die VC6 Apache und PHP Versionen in XAMPP durch die VC9 Versionen ersetzt habe. Zu meinem Erstaunen hat dies ohne größere Probleme funktioniert.

Im folgenden habe ich alle Schritte detailliert beschrieben, ich hoffe man kann meinen Ausführungen folgen. Bei Fragen einfach einen Kommentar am Ende dieser Seite schreiben…

[uds-ads position=Specials468 resolution=468]

0. Benötigte Dateien:

1. Sicherung des XAMPP-Ordners anlegen

Es ist unbedingt notwendig, eine Sicherung des gesamten XAMPP-Ordners anzulegen, wir benötigen später noch Dateien hieraus. Des weiteren sollten alle laufenden Apache (httpd.exe) Prozesse und das XAMPP-Control-Panel beendet werden.

2. Apache austauschen:

  • Den Inhalt des pfad/zu/xampp/apache/ Ordners durch den Inhalt des Apache2 Ordners aus dem Downlad ersetzen.
  • Danach den Inhalt von pfad/zu/xampp/apache/conf/ durch den Inhalt des in Schritt 1 gesicherten xampp/apache/conf/ Ordners ersetzen. Dies stellt die originalen, für XAMPP angepassten Konfigurationsdateien wieder her.

3. PHP austauschen:

  • Den Inhalt des pfad/zu/xampp/php/ Ordners durch den Inhalt des Downloads ersetzen.
  • Die Datei pfad/zu/xampp/php/php5apache2_2.dll in den Ordner pfad/zu/xampp/apache/modules/ kopieren, dabei ggf. die bereits vorhandene Version ersetzen.
  • Danach die pfad/zu/xampp/php/php.ini Datei durch die in Schritt 1 gesicherte xampp/php/php.ini ersetzen. Auch dies stellt die für XAMPP angepasste Konfiguration wieder her.
  • In der dieser jetzt ersetzen php.ini folgende Zeile suchen: extension=php_ming.dll und diese auskommentieren (ein Semikolon an den Zeilenanfang setzen). Diese Erweiterung wird dadurch deaktiviert; sie ist nicht kompatibel mit PHP VC9.

4. oAuth Erweiterung installieren:

  • Die Datei php_oauth.dll aus dem letzten Download in den Ordner pfad/zu/xampp/php/ext/ kopieren.
  • In der Datei pfad/zu/xampp/php/php.ini diese Zeile suchen: extension=php_bz2.dll und direkt darüber folgendes einfügen: extension=php_oauth.dll . Dieser letzte Schritt aktiviert die oAuth Erweiterung.

Fertig!

English Version

HowTo: Use oAuth with XAMPP under Windows

Unfortunately, it’s not quite easy to use PHPs oAuth PECL Extension with XAMPP, when working on Windows. That’s based on the fact, that XAMPP shipps with Apache and PHP both as VC6 Versions, though the oAuth Extension is only available as VC9 Version.

As I said, it’s not the easiest way, but there is one. “Just” replace the VC6 Versions of Apache and PHP by the VC9 ones.

Below, I’ve written down all necessary steps;  I hope that you are able to follow them. If you have any questions, feel free to post a comment and ask it…

[uds-ads position=Specials468 resolution=468]

0. Required files

1. Create backup of XAMPP folder

It is absolutely important to create a backup of the whole XAMPP folder, since we need some of the original files, later. Further, all running Apache processes (httpd.exe) and the XAMPP Control Panel should be closed.

2. Replace Apache

  • Replace the contents of the folder /path/to/xampp/apache/ by the contents of the apache2/ folder in the download.
  • After that, replace the contents of /path/to/xampp/apache/conf/ by the content of the backed up original /xampp/apache/conf/ folder. This will restore the xampp-customized configuration files.

3. Replace PHP

  • Replace contents of /path/to/xampp/php/ by the contents of the download.
  • Copy the file /path/to/xampp/php/php5apache2_2.dll to /path/to/xampp/apache/modules/ . If this file already exists at that location, then override it.
  • Replace the file /path/to/xampp/php/php.ini by the backed up original. This restores the customized php configuration.
  • In this restored php.ini file search for extension=php_ming.dll and comment it out (put a semikolon at the beginning of the line). This Extension will be deactivated; it’s not compatible to PHP VC9.

4. Install the oAuth extension

  • Copy the file php_oauth.dll from the last download to /path/to/xampp/php/ext/ .
  • In the edited php.ini from step 3 find the line: extension=php_bz2.dll and right above that add this line: extension=php_oauth.dll . This last step finally activates the oAuth extension.

Your done!

  • Andreas

    Klappt unter Win7 nicht kommt die Meldung “httpd.exe” konnte nicht gestartet werden.

  • Andreas

    Ich nochmal, habe es mehrmals durchgegangen – fehler hängt mit apache zusammen das diéser nicht gestartet werden kann. schade X(

    habe als betriebssytem win7 64bit; der hat allerdings schon probleme mit dem konsolenstarten mit xampp 1.7.4 mit 1.7.3 klappt xampp control normal.

  • Sutha

    I followed the above steps mentioned here. After that , apache is not started. Please help me regarding this.