Re: Installing local PEAR copy on shared host

From: Date: Wed, 24 Dec 2003 03:25:53 +0000
Subject: Re: Installing local PEAR copy on shared host
References: 1 2  Groups: php.pear.general 
Request: Send a blank email to pear-general+get-9809@lists.php.net to get a copy of this message
Well here is one quite good solution :) // Setup include path $app_root = dirname(__FILE__); $pear = $app_root . '/pear/'; $delim = (PHP_OS == "WIN32" || PHP_OS == "WINNT") ? ';': ':'; ini_set('include_path', ".{$delim}$pear{$delim}$app_root/include{$delim}$app_root"); this is a part of my config file which is located in the root dir of my project :) which i got from this here artical http://smarty.incutio.com/?page=SmartestSmartyPractices ( user of PEAR in a local dir with Smarty ) with a small modifaction dirname(__FILE__) this allows you to move the whole project between folders/servers without need to modify the config file :) Author of the artical is Tom Anderson (toma) Regards Helgi Jim Tom Polk wrote:
Check your configuration. The documentation does not state that you need to double check the configuration. Once you get it correct, manually, it works great! I elected to install PEAR into /www/servername/includes, and after it installed the basics, it wrote the file for the front end into that directory. I copied it over to a place accessible to my web server, then ran it, and it gave me the same errors. Changing the configuration fixed the problem. Before I go there, you might want to do the include path differently. It assumes a certain configuration, that will not work on all servers. I work on Linux, so it would do it like this... <?php ini_set('include_path' . '/www/servername/includes/PEAR' . PATH_SEPARATOR . ini_get('include_path')); ?> But that does not work because the PATH_SEPARATOR does not work on my system, so I do: ini_set("include_path",ini_get("include_path") . ":/www/servername/includes/PEAR"); With that aside... This is what my config looks like... PEAR executables directory:
    /www/servername/includes/bin   PEAR documentation directory:
      /www/servername/includes/PEAR/docs   PHP extension directory:
    /usr/lib/php4        PEAR directory:        /www/servername/includes/PEAR   PEAR Installer cache directory:
    /www/servername/includes/PEAR/cache        PEAR data directory:             /www/servername/includes/PEAR/data
PHP CLI/CGI binary:             /usr/bin/php
PEAR test directory:             /www/servername/includes/PEAR/tests
Cache TimeToLive:             3600
Preferred Package State:             stable
Unix file mask:             22
Debug Log Level:             1
HTTP Proxy Server Address:             PEAR server:             pear.php.net
PEAR password (for maintainers):             Signature Handling Program:             /usr/bin/gpg
Signature Key Directory:             /etc/pearkeys
Signature Key Id:
            Package Signature Type:             gpg
PEAR username (for maintainers) By making those changes, it works perfectly. FYI: I'm a sysadmin but I've been try to figure out the best way for people to use PEAR when they do not have root access to a system, which is pretty much everyone. With a little testing and tightening up of the documentation (the double check of the config) it is almost perfect. On Mon, 22 Dec 2003 20:05:21 -0500, David King <dave@tech-king.com> wrote:
Hello, I tried to get archived messages from the list server, but all it would send me was the topic names.. i.e... pear-general-get.398_401@lists.php.net output: pear-general Digest of: get.398_401 Topics (messages 398 through 401): installing PEAR standalone/non-root 398 by: John K. 399 by: Martin Jansen 400 by: Ryan Grange 401 by: Luc Saint-Elie (But no actual message data!) Problem: I can successfully install PEAR locally on a shared server but I cannot figure how to administer it once it is installed. i.e. I get the following errors %/home/myacccount/pear/bin/pear install XML_Tree downloading XML_Tree-1.1.tgz ... Starting to download XML_Tree-1.1.tgz (4,826 bytes) .....done: 4,826 bytes failed to write /usr/local/lib/php/XML/.tmpTree.php (I cannot get access to this directory) Details: I am installing a local copy of pear for which I do not have access to root or the system pear command. I performed the following steps per the doc page (ftp section) http://pear.php.net/manual/en/installation.shared.php: 1. mkdir /home/myacccount/pear (not accessible from http) 2. chmod 777 /home/myacccount/pear 3. mkdir /home/myacccount/www/installpear (accessible from http) 4. cd /home/myacccount/pear 5. lynx -source http://go-pear.org > go-pear.php 6. cp go-pear.php /home/myacccount/www/installpear 7. (from browser) http://mydomain.com/installpear/go-pear.php 8. This executes the install program.. which executes successfully 9. Now /home/myacccount/pear contains the following directories:
drwxr-xr-x    2 nobody   nobody       1024 Dec 22 16:28 bin
-rw-r--r--    1 nobody   nobody       2414 Dec 22 16:28 index.php
drwxr-xr-x   18 nobody   nobody       1024 Dec 22 16:28 PEAR
-rw-r--r--    1 nobody   nobody        410 Dec 22 16:28 pear.conf
drwxr-xr-x    2 nobody   nobody       1024 Dec 22 17:35 tmp
I also tried the following: 1. cd /home/myacccount/pear 2. cp index.php /home/myacccount/www/installpear 3. (from browser) http://mydomain.com/installpear/index.php 4. I was able to search and find the XML_Tree module through the PEAR Install/Update interface, but had the following error when trying to install it: downloading XML_Tree-1.1.tgz ... Starting to download XML_Tree-1.1.tgz (4,826 bytes) . . ...done: 4,826 bytes failed to write /usr/local/lib/php/XML/.tmpTree.php I would appreciate any assistace in this matter Dave King


« previous php.pear.general (#9809) next »