Uploading a file means copying it to a different computer. Allsky supports several ways to upload files including ftp, scp, and others.

Testing an upload

After you've configured settings such as Server Name and Protocol for a remote Website or remote server, run one of the commands below, depending on whether you are testing uploads to a remote Allsky Website or a remote server:

testUpload.sh --website
     OR
testUpload.sh --server

This attempts to upload a file and if it fails, it tries to determine why it failed and display how to fix it.

If that doesn't help, look at the sections below for additional information.

Incorrect WebUI settings or URL mapping

Most people use ftp or sftp to transfer files to another machine, so this section will assume that. The term "remote Website" means an Allsky Website not on your Pi, but on a remote server, possibly one you pay for services on.

The Server Name, User Name, and Password settings in WebUI must be correct. If you can't log into to your remote server with that information, Allsky won't be able to either. Single quotes in the password can cause a problem for Allsky.

The directory structure on your remote server must match the Allsky standard; changing locations and/or names of files and directories on the remote Website will cause uploads to fail.

If you don't know the difference in a file location on a server and its associated URL, check out the Mapping server locations to URLs page.

Certificate-related errors

There are three main certificate-related error messages you'll see.

  1. Host key verification failed   OR
    The authenticity of host 'xxxxx' can't be established
    These errors typically occur when using the sftp PROTOCOL. On the Pi, ssh to your remote server: ssh -p 22 username@host (replacing "username" and "host" with the appropriate values). The host will display a message and prompt for "yes" or "no". Enter "yes". This only needs to be done once for a given host.
    The remote server now knows about the Pi.
  2. Certificate verification: certificate common name doesn't match requested host name "xyz.com"
    There are two ways to fix this:
    1. Create a file called ~/.lftprc and add set ssl:check-hostname false to it:
      echo "set ssl:check-hostname" > ~/.lftprc
    2. Set the FTP Commands setting to set ssl:check-hostname false. If you expect to execute lftp manually the first method is better, otherwise use the second method so all your configuration changes are in one place.
  3. Certificate verification: Not trusted
    Add set ssl:verify-certificate no to FTP Commands or the ~/.lftprc file as above.
If your Pi's IP address changed, or the IP address remained but the machine using the addressed changed, you probably need to remove the previous key from your ~/.ssh/known_hosts file. If the file has only one entry, simply remove it. If the file has multiple entries, make a backup of the file, then delete one entry at a time until you find the "bad" one.

Missing directories on the remote Website or server

Review the Allsky Website installation instructions or the Remote server installation instructions to determine how to create the necessary directories.