mirror of git://git.qorg11.net/lainsafe.git
95 lines
1.7 KiB
Groff
95 lines
1.7 KiB
Groff
.\"Manpage for lainsafe
|
|
.TH lainsafe 1
|
|
.SH NAME
|
|
lainsafe \- Simple file upload
|
|
|
|
.SH DESCRIPTION
|
|
|
|
lainsafe is a simple file upload server written in Perl + CGI.
|
|
|
|
It runs in a Web server (i.e. nginx) with a CGI handler
|
|
(i.e. fcgiwrap)
|
|
|
|
You also have to install the dependencies, in Debian:
|
|
|
|
.in +4n
|
|
.EX
|
|
apt install nginx libcgi-pm-perl fcgiwrap
|
|
.EE
|
|
|
|
.SH INSTALLATION
|
|
|
|
You can use any web server for running lainsafe. However, nginx is
|
|
recommended. The following configuration should work for nginx:
|
|
|
|
.I /etc/nginx/sites-enabled/lainsafe.conf
|
|
.in +4n
|
|
.EX
|
|
server
|
|
{
|
|
server_name lainsafe.foo.tld;
|
|
|
|
listen 80;
|
|
listen [::]:80;
|
|
client_max_body_size 100m; # max size 100MBs, change 10 to 100
|
|
# in upload.cgi in line 30
|
|
root /var/www/lainsafe;
|
|
|
|
location ~ \.cgi$ {
|
|
gzip off;
|
|
include /etc/nginx/fastcgi_params;
|
|
fastcgi_pass unix:/var/run/fcgiwrap.socket;
|
|
fastcgi_index index.cgi;
|
|
fastcgi_param SCRIPT_FILENAME /var/www/lainsafe/$fastcgi_script_name;
|
|
}
|
|
}
|
|
.EE
|
|
.PP
|
|
The document root will be /var/www/lainsafe (be sure to change it in
|
|
.I root
|
|
and
|
|
.I fastcgi_param SCRIPT_FILENAME if you're going to use another directory
|
|
|
|
You also have to give the .cgi files +x permissions:
|
|
|
|
.in +4n
|
|
.EX
|
|
chmod +x *.cgi
|
|
.EE
|
|
|
|
.PP
|
|
And also, create the "files" directory manually, and give it
|
|
permissions so the user that is running nginx (usually)
|
|
.I www-data
|
|
can write on it.
|
|
|
|
.EX
|
|
chown www-data:www-data files
|
|
.EE
|
|
|
|
.SH TROUBLESHOOTING
|
|
|
|
.SS 502 Bad Gateway
|
|
|
|
Probably you're missing the
|
|
.I CGI
|
|
dependence, so install it with CPAN or apt
|
|
|
|
.in +4n
|
|
.EX
|
|
cpan -i CGI
|
|
apt install libcgi-pm-perl
|
|
.EE
|
|
.PP
|
|
If you still get this problem, run
|
|
.in +4n
|
|
.EX
|
|
perl <file>.cgi
|
|
.EE
|
|
.PP
|
|
so perl can help you debug the problem.
|
|
|
|
.SS 403 is returned
|
|
|
|
You probably forgot to give the files execution permissions.
|