-
Notifications
You must be signed in to change notification settings - Fork 57
Install
Below are generic instructions on how to install storytlr. These instructions have been tested on a Bluehost box. Feel free to comment if you have issues with other providers and we'll update the instructions.
If you need help, please use the the mailing list or search the issues. If you use IRC, you can also check #storytlr on chat.freenode.net for real time discussion.
You'll need several things to run storytlr. If you are on a shared host like Bluehost, this is already installed for you. If you are running your own linux/windows server, you'll have to instal lthem.
- A web server running PHP and a MySQL database server
- Additional PHP modules
- Additional PHP Libraries
On a CentOS/RedHat distribution, the following command will install all required packages:
yum install httpd mysql-server php php-mcrypt php-mbstring php-gd php-mysql php-ZendFramework \
php-ZendFramework-Db-Adapter-Pdo-Mysql php-ZendFramework-Feed php-ZendFramework-Service
-
Prepare the domain or subdomain in your bluehost cpanel. For example, you may want to create the subdomain live.example.com, and map it to the folder public_html/live.
-
Connect through SSH, navigate to that folder and download the storytlr package
ssh <user@host>
cd ~/public_html/live/
wget https://github.com/storytlr/storytlr/tarball/master -O storytlr.tar.gz
- Extract the archive
tar --strip-components=1 -zxv -f storytlr.tar.gz
If you are on bluehost or another similar shared host, you kan skip this section.
If you have a regular linux box, you need to make various folders write accessible to the www user. You could make the whole storytlr/ folder write accessible to the www user, but if you want to change permissions only of the absolutely minimum required folders, here is the list:
- These must be always write accessible:
- feeds/
- protected/temp/
- protected/logs/
- protected/upload/
- These must be write accessible during the install process (and any further upgrade process):
- protected/install
- protected/config
- Go to your cpanel, and create a new database (e.g. storytlr). Create a new user (e.g default), set a user password (e.g.
******
), and grant all privileges to that user of the storytlr database.
If you are on your own system using the command line, you can use the mysql command line tool to configure the database:
mysql -e "create database storytlr;"
mysql -e "grant all privileges on storytlr.* to 'storytlr'@'localhost' identified by '<password>';"
- If you are on your own server, you probably need to add an entry in your Apache server pointing to your storytlr folder.
** Note that the content and location of this file will depend on your operating system. The following is a sample file for a CentOS/RedHat distribution, when Storytlr is installed in /usr/share/storytlr
.
<VirtualHost *:80>
ServerSignature On
DocumentRoot /usr/share/storytlr
LogLevel warn
ErrorLog /var/log/httpd/storytlr_error.log
CustomLog /var/log/httpd/storytlr_access.log combined
<Directory /usr/share/storytlr>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
-
Open a browser and navigate to your site (e.g. http://live.example.com). You should be greeted by the storytlr install wizard.
-
The install wizard will check if you have all required software and file permissions to install storytlr. If you see something in red, you need to fix it before moving ahead with the install.
-
Fill in the form with the database account you created earlier. Pick a username and a password. If you want to use the Flickr API or the Google Maps API, you need to provide your developer keys. (This can be done later by editing the protected/config/config.ini file).
-
Click install... and if all goes well you will see a success message with links toward your new storytlr page and the admin account.
-
For your first steps unsing storytlr, you want want to check out our Getting started guide.
Storytlr enable you to import data from other services (e.g. Twitter). This is a one-shot import. If you want to continuously check for new data and keep on updating your storytlr, you'll need a bit more configuration.
The file /protected/tools/update.php is a command line PHP script that will update a single user's sources.
To try it, run:
$ php5 protected/tools/update.php <username>
To make this update regularly, you'll need to set up a "cron job":http://www.unixgeeks.org/security/newbie/unix/cron-1.html, sometimes called a scheduled task by web hosts.
There are various ways to set up a cron job, often your web host will provide a web based interface to create the job.
Here is an example crontab that will run the update script every 15 minutes:
*/15 * * * * /usr/bin/php5 /home/jmhobbs/storytlr/protected/tools/update.php admin
Note that your cron job will differ, paths to PHP and your source code are dependent on the host. Please check with your hosting company if you have trouble setting up a cron job.
- By default your site is a single user installation. Check the Frequently Asked Questions to change to a multi-user installation.
- By default registration to the site is closed. Check the Frequently Asked Questions to change to allow registration.
- If you have troubles, set debug = 1 in config.ini for error logging