Running webserver

Barrelfish webserver runs by fetching files over NFS share and serving them to users requesting the files. Currently it assumes that all files are in a flat directory without any subdirectories.

Modules needed

The webserver depends all the modules needed to get networking working, and on top of that it needs webserver module. Following is a webserver relevant part of the menu.lst

# For networking
module /x86_64/sbin/e1000n
module /x86_64/sbin/NGD_mng cardname=e1000
module /x86_64/sbin/netd cardname=e1000

# For webserver
module  /x86_64/sbin/webserver e1000 /local/nfs/website/barrelfish

The webserver takes following commandline arguments:

Please refer to networking page for details about modules related to networking.

Making sure webserver works

If everything goes fine, then you should see an output where you will see the webserver successfully downloading all the files from the given path on NFS share. Once the server is done with downloading all the files, you can point your browser to the IP address of the barrelfish machine, or try and download one of the file with wget.

If you don't see such an output, then look into the output log to see what IP address barrelfish server got from DHCP (assuming you are using dhcp setup) and try to ping that IP-address. If you don't see any IP address reported, or if you can't ping it, then there is a network setup issue.

Troubleshooting webserver

Typical problem in running webserver is problems in network setup. Following are the few problems that can happen, and networking may have hints about how to deal with them.

BarrelfishWiki: Webserver (last edited 2015-01-11 13:02:48 by shindep)