luke-knol / agile-browser

web based file browser and uploader for limelight agile customers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Setup instructions:

(for those wishing to just follow a set of commands please scroll to end of the file)

Hosting webserver requirements:

    Install apache2 and the following packages:

    ii  zip                                  2.32-1                     Archiver for .zip files
    ii  p7zip                                9.04~dfsg.1-1              7zr file archiver with high compression ratio
    ii  p7zip-full                           9.04~dfsg.1-1              7z and 7za file archivers with high compression ratio

    ii  libapache2-mod-php5                  5.2.12-0.dotdeb.1          server-side, HTML-embedded scripting language (Apache 2
    ii  php-apc                              3.0.19-2                   APC (Alternative PHP Cache) module for PHP 5
    ii  php-pear                             5.2.11-0.dotdeb.1          PEAR - PHP Extension and Application Repository
    ii  php5                                 5.2.11-0.dotdeb.1          server-side, HTML-embedded scripting language (metapack
    ii  php5-cli                             5.2.12-0.dotdeb.1          command-line interpreter for the php5 scripting languag
    ii  php5-common                          5.2.12-0.dotdeb.1          Common files for packages built from the php5 source
    ii  php5-curl                            5.2.12-0.dotdeb.1          CURL module for php5
    ii  php5-dev                             5.2.11-0.dotdeb.1          Files for PHP5 module development
    ii  php5-gd                              5.2.12-0.dotdeb.1          GD module for php5
    ii  php5-memcache                        5.2.12-0.dotdeb.1          memcache module for php5

Configuration:

    Place browser_config.xml into the directory /etc/agile (you will likely need to create the directory "agile")


    Apache2 setup:

        Nothing special, just be sure to setup ssl.

    PHP Setup:

        In order to support file uploads php.ini will have to be modifed.

        Edit the following values:
            upload_max_filesize = 1000M
            post_max_size = 1000M

        Add the following values: (anywhere is fine, but I put them under the upload section)
            apc.rfc1867 = on
            apc.rfc1867_freq = 1K
            apc.gc_ttl = 259200
            apc.max_file_size = 1000M

    Copy/Move the contents of the package sans the config file to the path you want to host the site from.  (typically /var/www/<your_site>)
    Create a directory named "uploads" under the site root directory ie (/var/www/<your site>/uploads)
    Change the permissions on the directory to be writeable by www-data:www-data

    Once apache and PHP configuration is complete remember to restart apache


CSS / Branding information:

    "css/styles.css" can be modified for simple branding changes

    Replace the logo with your desired header logo.  Recommended size 300px x 100px with a transparent background
    Uncomment / comment out / modify the following styles:

    	.agile-label
    	#upload-help
    	.logo
    	.fileupload-content .ui-progressbar-value

    For your convenience 3 basic color options have been pre-created: green, blue and gray



Troubleshooting:

Note: Unless needed for logging / debugging PHP.ini should be set to ignore NOTICE level warnings.

Permission issues
* Make sure your uploads directory ie /var/www/agile_browser/uploads/ has the proper permissions.  user/group www-data should have full read, write and delete permissions.
* Agile browser performs some operations (like zipping and deleting local temporary files) which require "safe mode" to be turned off.  By default it should be.
* Make sure the smarty templates directory has rw permissions by apache (sudo chown -R www-data:www-data /var/www/agile_browser/smart/template*)

Upload issues
*Agile browser supports uploads of files up to 1gig in size.  Your PHP.ini file will need to be updated to support this functionality as well.


Command list (intended for reference only)

#dep install command list:
sudo apt-get update
sudo apt-get install zip unzip p7zip p7zip-full
sudo apt-get install libapache2-mod-php5 php-apc php-pear
sudo apt-get install php5 php5-cli php5-common php5-curl php5-dev php5-gd php5-memcache

#fetch / install source code command list:
cd ~
wget https://github.com/luke-knol/agile-browser/archive/master.zip
unzip master.zip
cd agile-browser-master
#edit browser_config.xml using the aforementioned instructions
sudo mkdir /etc/agile
sudo mv ./browser_config.xml /etc/agile
sudo mkdir /var/www/browser
sudo cp -a -r ./* /var/www/browser
sudo mkdir /var/www/browser/uploads
sudo chown www-data:www-data /var/www/browser/uploads
sudo chown -R www-data:www-data /var/www/browser/smarty/template*


#apache setup command list:
sudo a2enmod ssl
sudo mkdir /etc/apache2/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
#fill out prompts
#edit /etc/apache2/sites-available/default-ssl to reference ssl files just created change site root and directory tag to /var/www/browser (site root)
#edit /etc/apache2/sites-available/default DocumentRoot and Document to /var/www/browser (site root)
#update /etc/php5/apache2/php.ini with aforementioned config values
#enable sites
sudo a2ensite default
sudo a2ensite default-ssl
#restart apache2
sudo /etc/init.d/apache2 restart


About

web based file browser and uploader for limelight agile customers


Languages

Language:JavaScript 63.9%Language:PHP 27.3%Language:CSS 8.8%