Zurück   Flashforum > Flash und Server > PHP und MySQL

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-01-2004, 11:34   #1 (permalink)
got root?
 
Benutzerbild von Cybersmog
 
Registriert seit: Aug 2002
Ort: Bayern
Beiträge: 105
Lightbulb [Tutorial] Eigene PEAR Installation bei Shared Hosting Providern

[Tutorial]
Eigene PEAR Installation bei Shared Hosting Providern



Vorbemerkung
Um PEAR sinnvoll nutzen zu können, sollte man schon etwa PHP Erfahrung haben. Auch sonstige Kenntnisse, was Apache und Webprogrammierung angeht, sind sicher nicht verkehrt. Trotzdem möchte ich damit niemanden abschrecken, denn auch Einsteiger können von PEAR profitieren.


Was ist PEAR überhaupt?
Zitat:
PEAR (PHP Extension and Application Repository) ist ein zentrales Archiv für Klassen und Bibliotheken in PHP mit einem hohen Wiederverwendungswert. Innerhalb von PEAR existiert darüber hinaus PECL, in dem Erweiterungen für PHP, die in C und C++ geschrieben sind, enthalten sind.

Der Zweck von PEAR ist die Verbreitung nützlicher, geprüfter und qualitativ hochwertiger objekt orientierter Skripte (Packages) in PHP und Erweiterungen in C, die von allen PHP-Entwicklern genutzt werden können.

Gleichzeit sollen die Standards, die in PEAR definiert werden, dazu dienen, dass Entwickler Code schreiben können, der portabel, auf vielen anderen Systemen und Konfigurationen einsetzbar und gut lesbar ist.

Zitat von http://www.dclp-faq.de/q/q-pear-was.html
PEAR lässt sich also am ehesten mit dem CPAN für Perl vergleichen.
Über den Sinn bzw. Unsinn von PEAR kann man gerne streiten. Ich für meinen Teil benutze PEAR sehr gerne.


PEAR bei Shared Hosting Providern?
Seit PHP > 4.3.0 ist PEAR mit ein paar Basispaketen (DB, Net_Socket, Net_SMTP, Mail, XML_Parser, PHPUnit-0.6.2) bei jeder PHP Installation dabei. Auch ein paar Provider bieten diese Basispakete schon an, z.B. Host Europe. Wenn PEAR aber nun nicht angeboten wird oder man auch andere Pakete nutzen möchte, steht man im Regen. Eine Möglichkeit wäre nun, die Pakete von Hand in den Webspace zu kopieren und in die Skripten einzubinden.

Ich möchte hier aber eine viel komfortablere Möglichkeit erklären, wie man zu seiner eigenen PEAR Installation mit graphischen Frontend kommt. Dazu werde ich die Installation am Beispiel von Host Europe erklären, aber die Anleitung müsste analog auch bei anderen Providern funktionieren.


Vorbereitungen
Als erstes muss der physikalische Document Root des Webservers ermittelt werden. Dazu reicht dieses kleine Skript:
PHP-Code:
<?php
echo $_SERVER['DOCUMENT_ROOT'];
?>
Der Output sollte in etwa so aussehen:
Code:
/is/htdocs/00000/www.domain.tld
Mein Beispiel ist jetzt von Host Europe, jeder Provider macht das etwas anders.


Installation von PEAR
  1. Als erstes braucht man das Installer Skript. Dazu ruft man http://go-pear.org/ auf (wichtig: ohne www). Man bekommt dann den Quelltext zu sehen, den man sich in einer Datei speichert. Ich nenne sie mal pearinstaller.php.
  2. Dann erstellt man im eigenen Webspace per FTP Programm ein Verzeichnis im Document Root, z.B. _pear. Auf das erstellte Verzeichnis wendet man dann noch
    Code:
    chmod 777
    an. Das ist nötig, damit später auch der Webserver Schreibrechte auf das Verzeichnis hat.
  3. In das erstellte Verzeichnis wird dann die Installerdatei, in meinem Fall pearinstaller.php hochgeladen.
  4. Per Browser ruft man die Datei dann auf: http://www.domain.tld/_pear/pearinstaller.php
  5. Man sollte dann das Installer Frontend zu Gesicht bekommen. Mit einem Klick auf next kommt man dann zur Konfiguration.
    Im Feld "Installation prefix" sollte dann schon etwas in dieser Art drinstehen:
    Code:
    /is/htdocs/00000/www.domain.tld/_pear
    Das Verzeichnis setzt sich aus dem oben ermittelten Document Root und dem Unterverzeichnis, in meinem Fall _pear, zusammen.
  6. In den Feldern 4 - 7 muss nun
    Code:
    $php_dir
    gegen
    Code:
    $prefix
    ausgetauscht werden.

    In Feld 10 wird nur
    Code:
    $prefix
    eingetragen.
  7. Das Kästchen mit der Frage nach den Standard PEAR Paketen sollte man markiert lassen.
  8. Nachdem alle Einstellungen gemacht sind, kann die Installation gestartet werden.
  9. Die Installation läuft jetzt vollautomatisch ab. Da die ganzen Pakete erst runtergeladen werden müssen, kann das eine Weile dauern. Die Installation ist fertig, wenn man am Ende der Seite den Link Start Web Frontend of the PEAR Installer zu sehen bekommt. Auf den Link klickt man dann natürlich.
  10. Wenn alles geklappt hat, bekommt man nun den Packet Manager zu sehen. Bevor man eigene Pakete installieren kann, müssen aber nochmals Einstellungen gemacht werden. Dazu klickt man links auf den Link Configuration.
  11. Auf der Konfigurationsseite müssen nun noch 3 Felder angepasst werden:
    Code:
    PEAR documentation directory: => /is/htdocs/00000/www.domain.tld/_pear/docs
    PEAR data directory: => /is/htdocs/00000/www.domain.tld/_pear/data
    PEAR test directory: => /is/htdocs/00000/www.domain.tld/_pear/tests
    Die Änderungen werden dann mit einem Klick auf den Go! Button gespeichert.
  12. Damit ist die Installation abgeschlossen und man kann loslegen.

Nach der Installation
Nach der PEAR Installation sollte man als erstes die Installer Datei (pearinstaller.php) löschen. Außerdem sollte man das Installationsverzeichnis unbedingt per .htaccess vor unberechtigtem Zugriff schützen.


Installation von PEAR Paketen
Die Pakete lassen sich über das Package Mangament nun ganz einfach per Klick auf das grüne Kreuz installieren, bzw. per Klick auf den Mülleimer deinstallieren. Über die Info Buttons kommt man an weiter Informationen.

Es empfiehlt sich, von Zeit zu Zeit auch mal auf den Link list avail. upgrades zu klicken, um an die neuesten Versionen der installierten Pakete zu kommen.


Einbinden von PEAR Paketen in eigene Skripten
Um PEAR nun nutzen zu können, müssen die Pakete natürlich auch in den Quelltext eingebunden werden. Dazu gibt es 3 Möglichkeiten:
  1. Man fügt in jede einzelne PHP Datei den Pfad manuell ein, z.B. so:
    PHP-Code:
    require_once '/is/htdocs/00000/www.domain.tld/_pear/PEAR/Mail/mime.php' 
  2. Eine andere Möglichkeit ist, am Anfang jeder PHP Datei, in der man PEAR Pakete braucht, diese Zeile einzügen:
    PHP-Code:
    ini_set('include_path''/is/htdocs/00000/www.domain.tld/_pear/PEAR/'); 
    Die einzelnen Module kann man dann relativ einfach einbinden:
    PHP-Code:
    require_once 'Mail/mime.php' 
  3. Die eleganteste Methode meiner Meinung nach ist, sich eine .htaccess Datei mit folgendem Inhalt anzulegen:
    Code:
    php_value include_path /is/htdocs/00000/www.domain.tld/_pear/PEAR/
    Diese Datei lädt man dann per FTP in das Document Root Verzeichnis hoch. Dadurch steht dann der PEAR Include Pfad überall zur Verfügung und man braucht in den einzlnen PHP Dateien nur noch das Modul selbst einbinden:
    PHP-Code:
    require_once 'Mail/mime.php' 

Schlußbemerkung
Was sich jetzt relativ aufwendig anhört, ist in Wirklichkeit nicht sehr schwer. Meiner Meinung nach lohnt sich der Aufwand, denn man kann jetzt jederzeit PEAR Pakete installieren, updaten oder löschen.

Allen Interessierten sei auf jeden Fall die offizielle PEAR Homepage ans Herz gelegt. Dort finden sich viele weitere Informationen und natürlich auch ein (englisches) Handbuch.

Feedback auf dieses Tutorial ist jederzeit erwünscht. Eventuell vorhandene Fehler werde ich natürlich korrigieren.
__________________
[Tutorial] PEAR Installation bei Shared Hosting Providern

There are 10 types of people in the world: Those who understand binary, and those who don't ...

Geändert von Cybersmog (29-01-2004 um 12:56 Uhr)
Cybersmog ist offline   Mit Zitat antworten
Alt 29-01-2004, 12:29   #2 (permalink)
schnarchnase
 
Registriert seit: Jan 2002
Ort: konstanz
Beiträge: 2.953
genial! dankeschön
__________________

perlen vor die säue.
rechtschreibfan ist offline   Mit Zitat antworten
Alt 29-01-2004, 12:33   #3 (permalink)
Trickster
 
Registriert seit: Aug 2003
Ort: Bremen
Beiträge: 631
yo thx... ich habe vor mich demnächst in pear reinzuarbeiten
__________________
Carpe diem!
HaZuLiD0 ist offline   Mit Zitat antworten
Alt 30-01-2004, 07:58   #4 (permalink)
ontheoutsidelookingin
 
Benutzerbild von dassoud
 
Registriert seit: Jun 2001
Ort: Dortmund
Beiträge: 5.897
Thumbs up

ab in den tutorial bereich damit!
__________________

33rpm
dassoud ist offline   Mit Zitat antworten
Alt 30-01-2004, 07:59   #5 (permalink)
got root?
 
Benutzerbild von Cybersmog
 
Registriert seit: Aug 2002
Ort: Bayern
Beiträge: 105
Schon längst passiert

Guckst du hier:
Eigene PEAR Installation bei Shared Hosting Providern
__________________
[Tutorial] PEAR Installation bei Shared Hosting Providern

There are 10 types of people in the world: Those who understand binary, and those who don't ...
Cybersmog ist offline   Mit Zitat antworten
Alt 12-03-2006, 13:26   #6 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 4
Angry pear installation: error: loading zlib failed

bitte um eure hilfe....
habe schon pear.net,http://www.pear-forum.de/, gegoogelt und weiss der teufel was für sites aufgesucht, aber keine lösung gefunden...
ganz am anfang der installation kriege ich die meldung
PHP-Code:
loading zlib failed 
wahrscheinlich hat das was damit zu tun...?
wie gehe ich hier vor...

thanx für eure rückantwort

marioN
marioN@deSEIN ist offline   Mit Zitat antworten
Alt 12-03-2006, 14:49   #7 (permalink)
got root?
 
Benutzerbild von Cybersmog
 
Registriert seit: Aug 2002
Ort: Bayern
Beiträge: 105
Ich geh mal davon aus, dass bei dir PHP ohne zlib Unterstützung kompiliert wurde. Die brauchts aber für den PEAR Installer.

Lass dir mal mit
PHP-Code:
<?php phpinfo(); ?>
die PHP Konfiguration anzeigen.
Da muss oben bei Configure Command der Flag --with-zlib auftauchen.
Weiter unten sollte dann unter dem Punkt zlib das hier stehen:
ZLib Support enabled

Gruß
Peter
__________________
[Tutorial] PEAR Installation bei Shared Hosting Providern

There are 10 types of people in the world: Those who understand binary, and those who don't ...
Cybersmog ist offline   Mit Zitat antworten
Alt 12-03-2006, 14:57   #8 (permalink)
Neuer User
 
Registriert seit: Mar 2006
Beiträge: 4
Question zlib taucht nicht auf

danke für deine antwort - es deutet nichts auf zlib ext hin,
was kann ich hier tun? >> ausser manuell installieren?

marioN
marioN@deSEIN ist offline   Mit Zitat antworten
Alt 12-03-2006, 15:06   #9 (permalink)
got root?
 
Benutzerbild von Cybersmog
 
Registriert seit: Aug 2002
Ort: Bayern
Beiträge: 105
Wenn du bei einem Provider bist, kannst du den versuchen zu Bitten, PHP mit zlib Unterstützung zu installieren. Ansonsten bleibt dir nur die manuelle Installation.

Gruß
Peter
__________________
[Tutorial] PEAR Installation bei Shared Hosting Providern

There are 10 types of people in the world: Those who understand binary, and those who don't ...
Cybersmog ist offline   Mit Zitat antworten
Alt 01-08-2006, 19:53   #10 (permalink)
Neuer User
 
Registriert seit: Aug 2006
Beiträge: 3
Unhappy Installation schlägt fehl

Hallo,

bei mir schlägt die Installation leider fehl, ich habe die config angepasst wie vorgeschlagen, aber am Ende des Installscripts bekomme ich den Fehler

Warning: copy(/home/www/doc/5725/xxxxxxxx.de/www/_pear): failed to open stream: Is a directory in /home/www/doc/5725/xxxxxxxx.de/www/_pear/pearinstall.php on line 927

Der Link zum Web-Frontend zeigt auch auf mein DOCUMENTROOT; ergo geht dann logischerweise auch meine normale Index.php auf und nicht das Web-Frontend. Im angelegten _pear-Verzeichnis steht neben den Verzeichnissen nur eine conf.php, ebenfalls kein Hinweis auf Web-Frontend.

Was kann da falsch gelaufen sein? Bei den anderen Teilnehmern hier scheint es ja gefunzt zu haben ...

Th mas
Thorkel ist offline   Mit Zitat antworten
Alt 01-08-2006, 20:15   #11 (permalink)
wuschelkopp
 
Registriert seit: Aug 2004
Beiträge: 1.468
hast du schreibrechte?
firstlord18 ist offline   Mit Zitat antworten
Alt 01-08-2006, 20:32   #12 (permalink)
Neuer User
 
Registriert seit: Aug 2006
Beiträge: 3
yep ...

ja, 777 auf das angelegte _pear-Verzeichnis und es wurde auch artig gefüllt.
Nur das WebFrontend File konnte nicht geschrieben werden (sorry. die Zeile fehlte eben):


install ok: channel://pear.php.net/PHPUnit-1.3.2
Writing WebFrontend file ...

Warning: copy(/home/www/doc/5725/xxxxxxxx.e/www/_pear): failed to open stream: Is a directory in /home/www/doc/5725/xxxxxxxx.de/www/_pear/pearinstall.php on line 927

Was ich nicht verstehe, ist aber zB, daß ich in der Config ja den Wert für
10. Filename of WebFrontend => auf $prefix geändert habe - das ist ja aber bei mir das neue /home/www/doc/5725/xxxxxxxx.e/www/_pear Verzeichnis.

Dort finde ich kein Web Frontend wegen des o.g. fehlers (wie hieße es denn? index.php?). Und wieso zeigt trotz dieser Einstellung der Link zum Webfrontend bei mir eine Ebene höher ins DOCUMENTROOT??

Rätsel ...

Thomas
Thorkel ist offline   Mit Zitat antworten
Alt 01-08-2006, 20:35   #13 (permalink)
Neuer User
 
Registriert seit: Aug 2006
Beiträge: 3
jetzt gehts

ok, beim dritten Versuch habe ich jetzt doch

10. Filename of WebFrontend => auf $prefix/index.php stehen lassen und jetzt hat es funktioniert. Vielleicht hatte ich es nur falsch verstanden.

Danke !

Th mas
Thorkel ist offline   Mit Zitat antworten
Alt 27-02-2007, 11:33   #14 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 6
mmh...

Hi Leute,

habe das alles nach dieser Anleitung gemacht aber irgendwie kommt bei der Installation trotzdem eine Fehlermedung:

Code:
Error

Downloading package: PEAR-stable......

Warning: fopen() [function.fopen]: SAFE MODE Restriction in effect. The script whose uid is 0 is not
allowed to access /srv/www/htdocs/web1/html/_pear/gopeImqpwc owned by uid 30 
in /srv/www/htdocs/web1/html/_pear/pearinstaller.php on line 1051



Warning: fopen(PEAR-1.5.0.tgz) [function.fopen]: failed to open stream: No such file or directory 
in /srv/www/htdocs/web1/html/_pear/pearinstaller.php on line 1051



could not open PEAR-1.5.0.tgz for writing
Die Rechte sind alle vergeben, weiss aber nicht wo das Problem liegt!

Ich bitte um Eure Hilfe.

Gruß Peter
guraco ist offline   Mit Zitat antworten
Alt 27-02-2007, 12:26   #15 (permalink)
got root?
 
Benutzerbild von Cybersmog
 
Registriert seit: Aug 2002
Ort: Bayern
Beiträge: 105
Die Fehlermeldung sagt doch schon, was los ist:
Zitat:
SAFE MODE Restriction in effect.
Also entweder den safe mode ausschalten (sofern möglich) oder den Zugriff auf die entsprechenden Verzeichnisse erlauben. Mehr zum Thema: http://de3.php.net/manual/de/features.safe-mode.php

Gruß
Peter
__________________
[Tutorial] PEAR Installation bei Shared Hosting Providern

There are 10 types of people in the world: Those who understand binary, and those who don't ...
Cybersmog ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


LinkBacks (?)
LinkBack zu diesem Thema: http://www.flashforum.de/forum/php-und-mysql/tutorial-eigene-pear-installation-bei-shared-hosting-providern-112997.html
Erstellt von Für Art Datum Hits
[Erledigt] Excel Dateien schnell erstellen - php.de Dieses Thema Refback 09-07-2011 07:23 13


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele