Thank you for purchasing uCloud (formally Cloudable). If you have any questions that are beyond the scope of this help file, please feel free to log a support request via our support portal. Thanks so much!
uCloud is a fully featured, quick and secure file manager.

It's been built for users and businesses who which to quickly organise, manage and share their files via a web browser.
You can upload large files (>5GB) with built in file chunking, manage files into folders, set folder/file passwords and/or access permissions, preview a huge amount of files directly within the browser, resize images, setup multiple users, expand using multiple file server storage and manage everything via the feature rich admin area.
uCloud has been designed to be easy to install, the config file and database is automatically created during the installation wizard. You simply need a web hosting account and one free MySQL database (no programming knowledge is required).
If you have any issues with installation or even after you've started using the script, please leave a comment via CodeCanyon and we will get back to you as soon as possible.
uCloud has been built using our own internal framework that is extremely robust and efficient. We've been using it on all our scripts at MFScripts for over 5 years! It's well tested by over 4,200 users.
Whenever we release a new version of uCloud you'll be notified via the script admin area of the new release. If you're still within your support period you can download it free of charge via CodeCanyon.
Please note: If you modify the code and upgrade may overwrite your own code changes. You should make note of any changes you make so you can easily re-apply them if needed.
These are the primary features of uCloud:
We have our own support portal that includes a support ticket system, knowledge base and forums, please register via our forum for full access.
Note: You will need to be have a valid license & within your support period to access the ticketing system. You have lifetime access to the support forum and knowledge base included within your purchase.

uCloud is written in PHP5.3 and uses a MySQL5 database. uCloud is a "Web Application" that must be installed on a Web Server.
You must install uCloud on a web host that supports PHP5.3, MySQL5 and Apache or Nginx.
You may also install uCloud on your personal computer by using one of the many options (i.e google WAMPserver or XAMPP), this is not covered in this document.
The full system requirements can be found below.
We've built an installation wizard into the script to make it really easily to get started.

If you have any issues with the installation, please see the troubleshooting section of this document.
During the uCloud install 1 file and 4 folders will need write permissions. Ensure the following have CHMOD 755 (or 777 depending on what your web host allows)

The cron tasks enable uCloud to send emails, tidy data (and other tasks) in the background. Please ensure these are setup as they are required by the script.
There are a number of ways to set these up. The best method is to use a Linux Cron style setup on the server itself. This will be the most reliable method. Although you can use one of the many free web cron services, these often only work once every 10-15 minutes, meaning that crons will take longer between runs.
0 0 * * * php /path/to/your/install/admin/tasks/auto_prune.cron.php >> /dev/null 2>&1
0 0 * * * php /path/to/your/install/admin/tasks/create_internal_notifications.cron.php >> /dev/null 2>&1
0 * * * * php /path/to/your/install/admin/tasks/delete_redundant_files.cron.php >> /dev/null 2>&1
0 0 * * * php /path/to/your/install/admin/tasks/downgrade_accounts.cron.php >> /dev/null 2>&1
*/5 * * * * php /path/to/your/install/admin/tasks/process_file_queue.cron.php >> /dev/null 2>&1
0 1 * * * php /path/to/your/install/admin/tasks/create_email_notifications.cron.php >> /dev/null 2>&1
If you do not have access to the command line you might have access to the web hosting control panel that should allow this. Otherwise talk with your webhost.
Upgrading is fairly straight forward. Use the following guide to upgrade your existing install to a new release.
The website settings can be found via the admin area. To access:

uCloud supports any number of languages. All the text content is routed through the translations module and can be translated.

Note: You may need to logout and back in to see the new language take affect.


The script structure can be seen below with notes next to each folder detailing it's purpose.

You can create your own themes within uCloud so future updates to the theme part of the script don't overwrite any custom changes.
1) Create a new directory named your theme in /themes/. Lowercase alphanumeric and underscores only. i.e.
/themes/yourtheme/
2) Copy the contents of /themes/flow/ into /themes/yourtheme/
3) In /themes/yourtheme/_theme_config.inc.php replace the parameters:
$themeConfig['theme_name'] = 'uCloud Theme'; // the name of the theme $themeConfig['folder_name'] = 'cloudable'; // the folder name you just created $themeConfig['theme_description'] = 'uCloud Main Theme'; // theme description shown in the admin area $themeConfig['author_name'] = 'uCloud'; // your name
4) Rename /themes/yourtheme/themeuCloud.class.php to /themes/yourtheme/themeNewtheme.class.php, ensuring you make the first letter of the theme name uppercase and the rest lowercase.
5) Open /themes/yourtheme/themeNewtheme.class.php and change line 3 from:
class themeuCloud extends Theme
to
class themeNewtheme extends Theme
6) You should now be able to enable the theme via your script admin area. The admin area thumbnail can be found in:
/themes/yourtheme/thumb_preview.png

Your server configuration can have a significant impact on the performance of uCloud. Below are some of the server settings we'd recommend using. It assumes you have at least a VPS server with root access and understand what you're doing!
- Enable XSendFile to take load away from PHP - https://support.mfscripts.com/public/kb_view/1/
- Enable X-Accel-Redirect to take load away from PHP - https://support.mfscripts.com/public/kb_view/2/
- Amend /etc/nginx/nginx.conf
http {
#...
fastcgi_read_timeout 300;
#...
}
Restart Nginx after any changes.
- Amend the following values in your global php.ini file:
memory_limit = 512M upload_max_filesize = 500M post_max_size = 500M max_execution_time = 180 max_input_time = 180
Restart your webserver to apply the changes.
- Amend /etc/php5/fpm/pool.d/www.conf
request_terminate_timeout = 300
pm.max_children = 50
Source for max_children - http://myshell.co.uk/blog/2012/07/adjusting-child-processes-for-php-fpm-nginx/
- If you're using FastCGI with PHP/Apache ensure you allow for any timeouts on large downloads, by default they will close connections after 5 minutes so you may get partially completed downloads. In your Apache config file add the following:
<IfModule mod_fcgid.c> FcgidBusyTimeout 43200 </IfModule>
If you're using WHM/cPanel you can add this to /usr/local/apache/conf/includes/post_virtualhost_global.conf
Save and restart Apache.
1) Enable query cache.
Edit my.cnf file (sometimes in /etc/mysql/my.cnf)
nano /etc/mysql/my.cnf
Add or uncomment the following lines:
query_cache_size = 268435456 query_cache_type = 1 query_cache_limit = 1048576
Restart MySQL. (this command will be different depending on your OS)
service mysql restart
2) Increase max connections in MySQL. In your my.cnf file, add or amend the following:
max_connections = 600
Save and restart MySQL. You may need to adjust this value depending on your traffic levels and server resources available.
Problem
After installing the script none of the html links are working and neither are the generated file download urls.
Fix (Apache)
This is generally one of the following issues:
RewriteBase /
Replace with:
RewriteBase /yoursubfolder/
<Directory /var/www/> AllowOverride All </Directory>
Fix (Nginx)
This is generally one of the following issues:
root /usr/share/nginx/html;
sudo service nginx restart
Problem
You've forgotten the admin password to your installation
Fix
1) Try the forgot password form on yoursite.com/forgot_password.html
2) If you can't remember the email address or it's invalid, you can reset it directly via the database.
- Login via your MySQL client such as phpMyAdmin.
- Execute the following sql on your database, replace ADMIN_USER with your admin username (usually 'admin') and NEW_PASSWORD with your new password.
UPDATE users SET password = MD5('NEW_PASSWORD') WHERE username='ADMIN_USER';
For example:
UPDATE users SET password = MD5('myp455w0rd') WHERE username='admin';
Problem
When a user registers on the site they see the confirmation screen however they never receive an email with their password in it.
Fix
This is due to a number of reasons, try each of the following in order:
1) Test a registration yourself and ensure the email isn't being sent to a spam folder. If it is being spammed or if AOL/Hotmail accounts are not receiving emails, ensure you have SPF records setup for your domain. Your host or system admin can enable this.
2) There are 2 methods the script uses to send email, PHP and SMTP. The default is PHP. Sometimes web hosts block PHP from sending to stop spam scripts from running so although PHP attempts to send the email, it doesn't actually go anywhere. If this is the case switch to SMTP sending via the admin area, site settings. (below)

Set the options as shown above but replace with your own SMTP email settings. Your web host will be able to confirm these.
3) If the above doesn't work you can test SMTP sending for any errors. To test:
Note: Sometimes not all debug messages are captured and outputted in the test_email.php script above. You can increase the debug level by temporarily editing the code. In coreFunctions.class.php find $mail->SMTPDebug = 1; and replace with $mail->SMTPDebug = 2; Save, reupload and test again for more detailed information.
- PHP7 support. - Login with your Facebook, Twitter or Google+ Account (optional setting via admin). - User registration page and relating admin settings: --- Whether to enable or disable the registration form. --- Whether to display the captcha on the site registration form. --- Block email address domains from registering. Comma separated list of domains. --- Block usernames from the registration page. - Automatic language translations via Google Translate API. Translate the entire site content to another language by clicking a button. Note: Requires a Google API key. Menually edited translations can be marked as 'locked' so they're not overwritten. - Added support for username and password protected http & ftp urls. In the format ftp://user:pass@host.com/filename.txt. - Improved session handling and how regularly the sessions are cleared from the database. - Reduced the amount of data stored in each session for bettter performance, from (up to) 65k to just over 1k. - Updated IP to Country data and added admin script to update the data as needed. (see the top of /core/includes/ip2Country.class.php) - Improved right 'next page' arrow positioning when viewing files. Allows for easier scrolling of documents. - Allowed for files to be dragged into folder icons on the main view. - Added menu down arrow on folder icons. - Admin Area: --- Added option in admin to block the same file from being re-uploaded. Optional on file remove and automatic after removal on abuse reports. --- Added admin "impersonate user" option, so admin users can login as any other user account. --- Added new admin page for backing up the database and codebase. Functionality also built in preparation for automatic upgrades at a later date. --- Admin option to set blocked keywords within the filename on file uploads. --- Added option to temporarily disable file uploads globally via the admin area, site settings. Uploads will still function for admin accounts. --- Added option to temporarily disable file downloads globally via the admin area, site settings. Downloads will still function for admin accounts. - Fixed issue with file move between external file servers. - Various other UI fixes and improvements. NOTE: There are database changes in this release. See \install\resources\upgrade_sql_statements\v1.1 - v1.2.sql
- Added watermarking of images by folder option. Upload a png watermark, set the position and padding. This can then be enabled by folder. Use this to share 'proof' copies of images to customers without giving the user full access to the image. - Added an option to hide or show the download button when sharing folders. - Automatic language translations via Google Translate API. Translate the entire site content to another language by clicking a button. Note: Requires a Google API key. - Added admin, theme settings option to add custom CSS code. This is kept between upgrades of the code. - Added admin, theme settings option to set the logo on the publicly shared pages. - Support for previewing animated gifs. - Added 'download all images' as zip file option when folder is shared. - Fix to hide OG image if file is set as private or requires a password. - Reduced the maximum size of portrait images when previewing, better fit for common screen resolutions. - Improved UI layout on mobile preview of images. - Other minor updates and improvements. NOTE: There is database changes in this release. See /install/resources/upgrade_sql_statements/v1.0 - v1.1.sql
- Initial release.
This program was developed by MFScripts Ltd and is copyrighted.
THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED "AS IS" AND WITHOUT WARRANTIES OF ANY KIND WHETHER EXPRESSED OR IMPLIED.
In no event shall the author or MFScripts Ltd be held liable for any damages whatsoever, including without limitation, damages for loss of business profits, business interruption, loss of business information, or any other loss arising from the use or inability to use the software.
Your purchase of uCloud allows you to install a SINGLE (one) copy of uCloud on ONE server. You may not resell, distribute or rent uCloud.
A number of MIT, LGPL and other copyrighted libraries and resources have been used in this program. These copyrights remain the property of their owners.
Some of these libraries include:
If we have missed anything please let us know!
We've spent the past 4 months building uCloud, plus years building and tuning the core framework however there's still lots more we can do. If you have any comments on how we can improve the script further feel free to post on our RFCs via the MFScripts forum or on CodeCanyon.
Thanks again for your continued support!
C O D E L I S T .C C