|
|
|
So, you have some content you want to offer the Freenet world? Great! If it's files, music, or other such data files, you may be better off inserting it into Freenet via Frost and telling others about it in the appropriate board. If you have something like an essay or a one-shot item, you might be better off handing it to someone like CofE to post, rather than taking on the commitment of a freesite. That being said, Freenet could always use some more portals of content and there's plenty of room.
These instructions assume you have a recent version of the program fcpputsite. To grab it from CVS, type
cvs -d:pserver:anonymous@cvs.freenet.sourceforge.net:/cvsroot/freenet
cvs -z3 -d:pserver:anonymous@cvs.freenet.sourceforge.net:/cvsroot/freenet co Contrib/fcptools
cd Contrib/fcptools
./configure
make
cp fcpputsite/fcpputsite ~/bin
Anyone?
There are two effective approaches to publishing a freesite: editions or date based redirects (DBR's). If this is your first time, I recommend you insert your freesite using an edition-based system because you are not pressured to constantly insert it on a daily basis. (Believe me, it gets old fast.) When you are more comfortable, you can move over to a DBR system.
An edition-based freesite is published one version at a time, when the author wants to. It can be updated as frequently or as infrequently as wanted and will always be available (assuming enough people read it to propogate it through the network). The basic premise is that you publish the site under a predictable, progressive naming scheme, like SSK@blarg/mysite/1//. Your site will contain image links to as-yet-unpublished versions, like SSK@blarg/mysite/2//. This way, visitors of your site will see a broken image link, since nothing is inserted under that URI. When you do publish version 2, the link will work correctly, and readers will know that you've updated. This is midly inconvenient for readers, however, because they have to constantly upgrade bookmarks (or rely on other Freenet sites to keep a current link).
A DBR-based freesite is published once per a pre-assigned cycle. The default is one day. When making a DBR link, you tell Freenet you want this link to change once per cycle. The DBR link does so, pointing to the current cycle date in hex, since UNIX epoch. For example: you create a DBR at SSK@blarg/mysite//. The DBR will point to something like SSK@blarg/3f982d-mysite//. All this redirecting is kept behind the scenes, however, and you merely give out SSK@blarg/mysite// as the URI. This is more convenient for readers, but much, much harder on the author. If the site is not uploaded for a cycle, the site appears unavailable, and it requires significant work on the part of the reader to find older versions. Thus, if you choose to insert a DBR site, please understand the commitment you are taking on.
Regardless of the format you insert under, there are many things you will need to know to make your site a success. here is a collection of tips:
First off, you're going to want to grab an SSK to use. An SSK lets you control what files are inserted on your site. To generate an SSK key pair, type fcpputsite -g . Do not give the private key to other people. I highly recommend testing anything you insert under some made-up key (i.e. SSK@blarg/testing/) in your SSK before inserting it under the key you give out to others (i.e. SSK@blarg/mysite/). This way, you can test it to make sure it won't trip fproxy's anonymity alarm or some such, which occurs if you have links that might compromise the anonymity of your users.
Basically, to link to sites outside of Freenet, you must use the following syntax: <a href = "/__CHECKED_HTTP__www.sourceforge.net" > . You cannot write <a href = "/__CHECKED_HTTP__http://www.sourceforge.net" > . To link to other sites within Freenet, write something like <a href="/KSK@gpl.txt"> -- the preceding / is the important thing. To link to other files on your freesite, just link to them relatively, just like normal: <a href="otherfile.html"> .
You want to avoid using Javascript, Java, Shockwave, or anything besides good old static html. You can use the above, but again, it will trigger the anonymity alarm and is asking your viewers to trust you a lot, since you may insert scripts that will break their anonymity.
If you are linking to static content outside of your site, like some mp3's or a video, please link directly to the CHK. This makes one less file request for your readers and ultimately makes the link more reliable.
Note: You should be inserting using a map file, which is one file that tells users where to download all the other files of your site, by CHK. This makes sites infinitely more propagatable because only one file really changes each update and there is only one redirect. You don't have to worry about manually inserting these, the tools should do that for you. But just be aware of it. These are what lets you use relative links without a care, since the user has already downloaded the map file that tells them what the link's CHK is.
To let other people access your site, give them the URI SSK@<public SSK key>/<site name>// . The double slash at the end means that the file is actually a map file, containing pointers to the files in your site.
Also, you may want to make a picture for your site that shows well at 95x32 pixels (the defacto standard for freesite links) so that other sites can link to yours.
Ok. So you're going to insert using Editions. This has the advantage of letting you update as little or as often as you want. If you see some major mistake, you can fix it immediately, instead of waiting a day. If you don't see a major mistake, you can wait a week or so before updating.
The only thing to be real careful of is to always have a link to the next edition of your site in a prominent place. Since you haven't inserted it yet, you're making a commitment to use the filenames to which you have linked. You might want to link to more than just the next edition as well because if you screw up anywhere along the line using a single-link chain of editions, it can be difficult for users to know, and the chain will be broken. Also, some editions may fall out of Freenet for whatever reason and a visitor to an old edition would think you haven't updated yet. Thus, you may want to have another means, in addition to the on-your-site-links, of letting people know about updates. Maybe a Frost board?
To actually insert the site, if you have all the files you want to insert in one directory (with an index.html) fcpputsite -v 3 -nodbr <your site name>/<your edition number> <directory of your site files> <public SSK key> <private SSK key>
DBR-specific Tips
DBRs are great, since everything is transparent and all you have to do is make sure to insert your site every day before midnight GMT, since that is when DBRs roll over. You have to reinsert even if nothing has changed. If you haven't inserted, users requesting your site get redirected to a date key that you haven't inserted under yet, thus making your site be offline. If you know you won't be able to update for a while, you can avoid your site being unavailable by inserting into the future, as you'll see below.
Put all the files you want to insert in a directory with an index.html as your default file. Now, type fcpputsite -v 3 -f <number of days in future to insert> <your site name> <directory of your site files> <public SSK key> <private SSK key> .
It is wise to insert a day in advance shortly before GMT midnight (when Freenet daily DBR sites switch over). This way, the insert will be over and done with when the date switches and readers can get it immediately.
You're all done. Wasn't that easy? Now, just do that everyday for the rest of your life. :)
|
|
|