Apache Shindig PHP
What is it?
-----------
Shindig is a JavaScript container and implementations of the backend APIs
and proxy required for hosting OpenSocial applications.
This is the PHP implementation of Shindig. If you are looking to the Java
implementation, please visit our website.
Documentation
-------------
The most up-to-date documentation can be found at http://shindig.apache.org/
and at http://shindig.apache.org/developers/php/index.html
for specific PHP documentation.
Read javascript/README for instructions for using the Shindig Gadget
Container JavaScript to enable your page to render Gadgets.
Release Notes
-------------
The full list of changes can be found at https://issues.apache.org/jira/browse/SHINDIG.
System Requirements
-------------------
PHP:
5.2.x or above with the json, simplexml, mcrypt and curl extentions
enabled.
Web server:
Apache with mod_rewrite enabled.
Memory:
No minimum requirement.
Disk:
No minimum requirement.
Operating System:
No minimum requirement. On Windows, Windows NT and above or Cygwin is
required for the startup scripts. Tested on Windows XP, Fedora Core
and Mac OS X.
Installing Shindig
------------------
Unzip the distribution archive, i.e. shindig-${project.version}-php.zip to
the web document root, e.g. /var/www/html.
Rename the created shindig-${project.version}-php dir to shindig.
a. Create a new virtual host
Point your Apache to the shindig dir with a virtual host like:
ServerName your.host
DocumentRoot /var/www/html/shindig
... other normal settings in vhosts...
AllowOverride All
Restart apache, and point your browser to:
http:///gadgets/ifr?url=http://www.labpixies.com/campaigns/todo/todo.xml
b. Run with an existing host
If you cannot/don't want to create a virtual host, you can edit the file
php/config/container.php or php/config/local.php (see the comments
php/config/container.php for documentation of the configuration system)
and change the web_prefix setting to '/shindig/php'.
In this case, you should also change all paths in shindig/config/container.js
(see the comments there for documentation of the JSON configuration system).
Then you can run the gadget by pointing your browser to:
http:///shindig/php/gadgets/ifr?url=http://www.labpixies.com/campaigns/todo/todo.xml
Going forward
-------------
Check out the php/config/container.php file, in local.php you only have
to specificy the fields you want to overwrite with other values, for
example on a production system you would probably want to have something
like:
$shindigConfig = array(
'debug' => false,
'allow_plaintext_token' => false,
'token_cipher_key' => 'MySecretKey',
'token_hmac_key' => 'MyOtherSecret',
'private_key_phrase' => 'MyCertificatePassword',
'person_service' => 'MyPeopleService',
'activity_service' => 'MyActivitiesService',
'app_data_service' => 'MyAppDataService',
'messages_service' => 'MyMessagesService',
'oauth_lookup_service' => 'MyOAuthLookupService'
'xrds_location' => 'http://www.mycontainer.com/xrds',
'check_file_exists' => false
);
And then implement your own service and oauth lookup classes.
Running from an svn checkout
---------
If you want to run PHP Shindig directly from an svn checkout, please refer to the
docs/README.svn file to learn about the configuration differences between the released
and svn version.
Licensing
---------
Please see the file called LICENSE.
Shindig URLS
------------
Home Page: http://shindig.apache.org/
Downloads: http://shindig.apache.org/download/index.html
Mailing Lists: http://shindig.apache.org/mail-lists.html
Source Code: http://svn.apache.org/repos/asf/shindig/
Issue Tracking: https://issues.apache.org/jira/browse/SHINDIG
Wiki: http://cwiki.apache.org/confluence/display/SHINDIG/
This distribution includes cryptographic software. The country in
which you currently reside may have restrictions on the import,
possession, use, and/or re-export to another country, of
encryption software. BEFORE using any encryption software, please
check your country's laws, regulations and policies concerning the
import, possession, or use, and re-export of encryption software, to
see if this is permitted. See for more
information.
The U.S. Government Department of Commerce, Bureau of Industry and
Security (BIS), has classified this software as Export Commodity
Control Number (ECCN) 5D002.C.1, which includes information security
software using or performing cryptographic functions with asymmetric
algorithms. The form and manner of this Apache Software Foundation
distribution makes it eligible for export under the License Exception
ENC Technology Software Unrestricted (TSU) exception (see the BIS
Export Administration Regulations, Section 740.13) for both object
code and source code.
The following provides more details on the included cryptographic
software:
Apache Shindig PHP interfaces with the mcrypt API
to provide encryption
of messages using the AES standard.