Back to RISC OS Resources
Using !WebServe as a webcache proxy

The !WebServe application was originally part of the Acorn !Browse web browser, it provided the browser proxy cache for all downloaded files. The !Oregano2 web browser does not have an integral web cache, which means that it fetches complete web pages with all their graphics files even if you just click on the back icon and go back to a page you have just displayed. If a web proxy is used, previously downloaded files are retrieved from the cache on the hard disk and not downloaded from the web again. All of this applies equally to !Oregano1.

Now since the release of various parts of the RISC OS operating system by RISC OS Open Ltd (ROOL), newly compiled versions which now run on 32 bit systems, of !Browse, !Phoenix and !WebServe are freely available. This means it is possible to use !WebServe as web cache for !Oregano2. At the time of writing the most recent compiled versions are in the archive 'all-bin-2007-11-15.zip'.

(ROOL have redesigned their site and not all of the previously avalilable compiled material is currently present. You can get !WebServe here. If !WebServe complains of needing later modules they can be obtained here if not available from ROOL.)

Although not essential to the following instructions, Alex Waugh has some useful extension plugins to Configure, which allow you to access PreDesk, Resources and several other directories easily.

Setting up !WebServe to proxy for !Oregano2

The updated applications Locate !WebServe in the ROOL archive and copy it to !Boot.Resources:
WebServe requires updated modules which can be found in the updated !Boot application, (again in the ROOL archive). Merge the new !Boot with the existing !Boot using the configuration merge utility. (You may want to backup your !Boot application first, in case something goes wrong)

Both !Browse and !Phoenix automatically load !WebServe when they start up, but Oregano2 does not have the right inbuilt hooks. Consequently an adjustment is needed to the !Run file of !Oregano2 to ensure that !WebServe is run when the browser is started.

The neatest way to achieve this is by the use of the FilerHRun module by Musus Umbra. This can be downloaded from Musus website. Install !FilerHRun in the PreDesk directory. This is located at: !Boot.Choices.Boot.PreDesk. (Either double click !FilerHRun or reboot to make it active)

To modify !Oregano2 !Run file, open an application by double clicking on it while holding down Shift. Load the !Run file into your text editor (double click on it while holding down shift) then modify the !Oregano2 !Run file so the final few lines look like this: (the new stuff is in red)

| Start up WebServe RJD
IfNTask "Acorn WebServe" FilerHRun <webserve$dir>


Set Oregano2$Running "Yes"

WimpSlot -Min 3000K -Max 3000K
If "yes" = "<Oregano2$Sound>" Then <Oregano2$Dir>.!RunImage %*0 Else <Oregano2$Dir>.!RunImage -nosound %*0

Unset Oregano2$Running

Then save the file (There is an alternative to FilerHRun involving editing the !Run files of both !WebServe and !Oregano2 Click here for details.)

Finally Run !Oregano2 and change the Choices (icon bar menu) to use !WebServe as the Proxy, as illustrated below. http://127.0.0.1/
Enter the same value for HTTPS or FTP if required.

Oregano2 choices Proxy

Oregano 1


If the !FilerHRun option is used, then an adjustment to the !Oregano !Run so the final few lines look like this: (the new stuff is in red)

| Start up WebServe RJD
IfNTask "Acorn WebServe" FilerHRun <webserve$dir>


Wimpslot -min 1280K -max 1280K

|initstore &deadbeef { > null: }

|RMEnsure socketfs 0 RMLoad OreganMods:socketfs
|Run <Oregano$Dir>.Oregano %*0 2> Oregano:Debug
|Run <Oregano$Dir>.Oregano %*0 2> socketfs#IPv4::tcp.$.ncserver\9000
|If "<Oregano$DebugOut>"="" Then Set Oregano$DebugOut <Oregano$Dir>.stderr
Run <Oregano$Dir>.Oregano %*0 2> null:

Change !Oregano1 Choices to use !WebServe as the Proxy, as illustrated below. 127.0.0.1:80

Oregano1 choices

Back to RISC OS Resources

Page last updated 31/5/13