source: extensions/net.sf.basedb.ftp/trunk/README @ 1225

Last change on this file since 1225 was 1225, checked in by Nicklas Nordborg, 12 years ago

Fixes #264: Investigate and fix issues with external files introduced in BASE 2.16

External files will show up as read-only for the FTP program. Files with an unknown size are reported to have size=0. This is not allowed in all cases by the FTP protocol. It is most likely only an issue when appending to a partly uploaded file and since we don't allow uploading there shouldn't be any problem.

  • Property svn:mime-type set to text/x-trac-wiki
File size: 3.3 KB
RevLine 
[714]1== Requirements ==
2
[1225]3 1. BASE 2.16.0 or later.
[714]4 
5== Introduction ==
6
7This package is an extension package to BASE that installs a small FTP
[985]8server as part of the web server. It uses the Apache FTP Server library
9for the actual handling of the FTP protcol.
[714]10
11 * The homepage for this extension:
12   http://baseplugins.thep.lu.se/wiki/net.sf.basedb.ftp
13 * The Apache FTP server site:
[741]14   http://mina.apache.org/ftpserver/index.html
[714]15
16== Installation ==
17
18 1. Download the `base-ftpserver-*.tar.gz` file.
19 2. Unpack the downloaded file to a directory of your choice.
[741]20 3. Copy the `ftp-config.xml` file to `WEB-INF/classes` directory.
21 4. The default `ftp-config.xml` file creates a regular FTP service with the
22    control connection on port 2121. There is also an example of an
23    SSL-enabled configuration. For more information about configuration
24    options see: http://mina.apache.org/ftpserver/documentation.html 
[714]25 5. Copy the `base-ftpserver.jar` file and the `lib` directory, including sub-
26    directories and files, to your BASE extensions directory, `WEB-INF/extensions`.
[717]27 6. Run the `Extensions -> Manual scan` command to install the extension. If you
[714]28    have enabled automatic installation, just sit back and wait for it to find
29    the FTP server extension.
30 7. The FTP Server should now be running, but it only allows the root user to
31    login. To enable other users to login you have to start an FTP client, connect
32    to your BASE FTP server and login as root. This will register the FTP server
33    as a new client application that is shared to `Everyone`. To limit which users
34    that can access the FTP server go to `Adminstrate -> Clients` and change the
35    sharing options for the FTP Server.
36 8. Done.
37
[741]38== Known issues ==
[714]39
[717]40 * BASE allows that a directory has the same name as a file. This may confuse
41   FTP clients since that is normally not allowed. The result for certain
42   operations is undefined for files and directories that has the same name.
[1225]43 * BASE 2.16 introduced an option to register files as a link to an external URL.
44   Such files-will show up as read-only in the FTP server. If the file size of an
45   external file is not known it is shown as 0 in the FTP server.
46 
[741]47== Tips and tricks ==
48
49 * If you want to try out an SSL enabled FTP server, but doesn't have
50   a certificate, you may create one with the following command:
51   
52   `keytool -genkey -keystore test.jks -storetype JKS -storepass test -keypass test  -alias test`
53
[714]54== Compiling ==
55
56To compile this package you also need:
57 
58 1. Ant 1.6
59 2. Java 1.6
60
61Follow these instructions:
62
63 1. Download the source code from the subversion repository. See
64    http://baseplugins.thep.lu.se/wiki/net.sf.basedb.ftp for instructions.
65 
66 2. Type `ant download-lib` to automatically download the BASE core JAR file that
67    are neeed for compilation. You can also do this manually by copying the
68    BASE2Core.jar and BASE2Webclient.jar from the BASE installation directory
69    (`<basedir>/www/WEB-INF/lib/`) to the `./lib/compile` directory.
70
71 3. Type `ant` to compile the code and generate the `base-ftpserver.jar` file
72    in the project directory.
73
74 4. Use `ant package` to create a downloadable tar.gz package.
75 
76Tip: If you need different values for any of the properties defined in
77the 'build.xml' file, create a file named 'build.properties' and set
78the values there.
Note: See TracBrowser for help on using the repository browser.