2 [Uguu.se](http://uguu.se) source code, stores files and deletes after X amount of time.
5 * Apache (PHP
5.4) on Ubuntu
14.04 LTS
6 * Apache (PHP
5.6) on Debian
8 Jessie
7 * Apache (PHP
5.6.33 (remi-php56)) on CentOS
6.9
8 * Nginx+PHP5-FPM (PHP
5.4) on Debian
7 Wheezy
9 * Nginx+PHP5-FPM (PHP
5.6) on Debian
8 Jessie
10 * Nginx+PHP7-FPM (PHP
7.0) on Debian
9 Stretch
12 * [Caddy](https://caddyserver.com/) + php7.0-fpm on Ubuntu
16.04.4 LTS
16 * Deploy base code, for example with
`git clone https://github.com/nokonoko/Uguu.git`
17 * Modify includes/config.php (copy config.template.php as a starting point) to set up the main options for Uguu.
18 * Some file extensions are blocked by default, this can be changed via includes/config.php's CONFIG_BLOCKED_EXTENSIONS value.
19 * Copy
`rain/template/footer.template.html` as
`rain/template/footer.html` and personalize the footer as you wish
20 * Execute check.sh regularly with cron to delete old files:
`crontab -e` and add
`0,15,30,45 * * * * cd /path/to/uguu/includes && bash check.sh` (or adapt if you know how cron works).
21 * Make the Uguu/public/files and Uguu/rain/cache directory modifiable by the web server user:
22 `chown -R www-data:www-data /path/to/Uguu/public/files` and
`chown -R www-data:www-data /path/to/Uguu/rain/cache`
23 * Make sure the Uguu/public/files folder is not indexable, you may use a virtual host config similar to this one using Apache:
27 ServerName path.to.uguu
29 DocumentRoot /var/www/Uguu/
30 <Directory /var/www/Uguu/>
35 Alias "/files" "/var/www/Uguu/public/files/"
36 <Directory /var/www/Uguu/public/files/>
38 SetHandler default-handler
48 Or something like this using Nginx+PHP-FPM:
53 listen 104.243.35.197:80;
54 server_name uguu.se www.uguu.se;
56 root /home/neku/www/uguu/;
58 index index.html index.php;
61 fastcgi_pass unix:/var/run/php5-fpm.sock;
62 fastcgi_intercept_errors on;
63 fastcgi_index index.php;
64 fastcgi_split_path_info ^(.+\.php)(.*)$;
65 include fastcgi_params;
66 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
69 error_page 404 /404.html;
70 error_page 403 /404.html;
77 a.uguu.se (notice that scripts e.g PHP will NOT be executed from this subdomain)
80 listen 104.243.35.197:80;
81 server_name a.uguu.se www.a.uguu.se;
83 root /home/neku/www/files;
87 error_page 404 /404.html;
88 error_page 403 /404.html;
98 * Leaving POST value 'name' empty will cause it to save using the original filename.
99 * Leaving POST value 'randomname' empty will cause it to use original filename or custom name if 'name' is set to file.ext.
101 * Putting anything into POST value 'randomname' will cause it to return a random filename + ext (xxxxxx.ext).
102 * Putting a custom name into POST value 'name' will cause it to return a custom filename (yourpick.ext).
105 * curl -i -F name=test.jpg -F file=@localfile.jpg http://path.to.uguu/api.php?d=upload (HTML Response)
106 * curl -i -F name=test.jpg -F file=@localfile.jpg http://path.to.uguu/api.php?d=upload-tool (Plain text Response)