source: Dev/branches/rest-dojo-ui/server/rdfapi/util/magpie/INSTALL @ 256

Last change on this file since 256 was 256, checked in by hendrikvanantwerpen, 13 years ago

Reworked project structure based on REST interaction and Dojo library. As
soon as this is stable, the old jQueryUI branch can be removed (it's
kept for reference).

File size: 4.7 KB
Line 
1REQUIREMENTS
2
3    MapieRSS requires a recent PHP 4+ (developed with 4.2.0)
4    with xml (expat) support.
5   
6    Optionally:
7      * PHP5 with libxml2 support.
8      * cURL for SSL support
9      * iconv (preferred) or mb_string for expanded character set support
10   
11QUICK START
12
13    Magpie consists of 4 files (rss_fetch.inc, rss_parser.inc, rss_cache.inc,
14    and rss_utils.inc), and the directory extlib (which contains a modified
15    version of the Snoopy HTTP client)
16   
17    Copy these 5 resources to a directory named 'magpierss' in the same
18    directory as your PHP script.
19   
20    At the top of your script add the following line:
21   
22        require_once('magpierss/rss_fetch.inc');
23   
24    Now you can use the fetch_rss() method:
25     
26        $rss = fetch_rss($url);
27       
28    Done.  That's it.   See README for more details on using MagpieRSS.
29
30NEXT STEPS
31
32    Important:  you'll probably want to get the cache directory working in
33    order to speed up your application, and not abuse the webserver you're
34    downloading the RSS from.
35   
36    Optionally you can install MagpieRSS in your PHP include path in order to
37    make it available server wide.
38   
39    Lastly you might want to look through the constants in rss_fetch.inc see if
40    there is anything you want to override (the defaults are pretty good)
41
42    For more info, or if you have trouble, see TROUBLESHOOTING
43
44SETTING UP CACHING
45
46    Magpie has built-in transparent caching.  With caching Magpie will only
47    fetch and parse RSS feeds when there is new content.  Without this feature
48    your pages will be slow, and the sites serving the RSS feed will be annoyed
49    with you.
50   
51** Simple and Automatic **
52   
53    By default Magpie will try to create a cache directory named 'cache' in the
54    same directory as your PHP script.
55   
56** Creating a Local Cache Directory **
57   
58    Often this will fail, because your webserver doesn't have sufficient
59    permissions to create the directory.
60   
61    Exact instructions for how to do this will vary from install to install and
62    platform to platform.  The steps are:
63   
64    1.  Make a directory named 'cache'
65    2.  Give the web server write access to that directory.
66   
67    An example of how to do this on Debian would be:
68   
69    1.  mkdir /path/to/script/cache
70    2.  chgrp www-data /path/to/script/cache
71    3.  chmod 775 /path/to/script/cache
72   
73    On other Unixes you'll need to change 'www-data' to what ever user Apache
74    runs as. (on MacOS X the user would be 'www')
75   
76** Cache in /tmp **
77   
78    Sometimes you won't be able to create a local cache directory.  Some reasons
79    might be:
80   
81    1.  No shell account
82    2.  Insufficient permissions to change ownership of a directory
83    3.  Webserver runs as 'nobody'
84   
85    In these situations using a cache directory in /tmp can often be a good
86    option.
87   
88    The drawback is /tmp is public, so anyone on the box can read the cache
89    files.  Usually RSS feeds are public information, so you'll have to decide
90    how much of an issue that is.
91
92    To use /tmp as your cache directory you need to add the following line to
93    your script:
94       
95        define('MAGPIE_CACHE_DIR', '/tmp/magpie_cache');
96       
97** Global Cache **
98
99    If you have several applications using Magpie, you can create a single
100    shared cache directory, either using the /tmp cache, or somewhere else on
101    the system.
102   
103    The upside is that you'll distribute fetching and parsing feeds across
104    several applications.
105   
106INSTALLING MAGPIE SERVER WIDE
107
108    Rather then following the Quickstart instructions which requires you to have
109    a copy of Magpie per application, alternately you can place it in some
110    shared location.
111   
112** Adding Magpie to Your Include Path **
113
114    Copy the 5 resources (rss_fetch.inc, rss_parser.inc, rss_cache.inc,         
115    rss_utils.inc, and extlib) to a directory named 'magpierss' in your include
116    path.  Now any PHP file on your system can use Magpie with:
117   
118        require_once('magpierss/rss_fetch.inc');
119
120    Different installs have different include paths, and you'll have to figure
121    out what your include_path is.
122   
123    From shell you can try:
124       
125        php -i | grep 'include_path'
126
127    Alternatley you can create a phpinfo.php file with contains:
128   
129        <?php phpinfo(); ?>
130   
131    Debian's default is: 
132       
133        /usr/share/php
134       
135    (though more idealogically pure location would be /usr/local/share/php)
136   
137    Apple's default include path is:
138   
139        /usr/lib/php
140       
141    While the Entropy PHP build seems to use:
142   
143        /usr/local/php/lib/php
Note: See TracBrowser for help on using the repository browser.