Re: Installing local PEAR copy on shared host
| From: | Helgi | 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/pearkeysSignature Key Id:Package Signature Type: gpgPEAR 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 tmpI 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