The AppServer in Webware is not a web server, but instead sits behind a web server, managing your Python servlets, server pages and other resources. The AppServer waits for connections from Adapters, which shuttle requests and responses between the web server and AppServer. Those Adapters allow Webware to be used with any web server, including Apache which is the most popular choice.
Adapters come in different flavors including OneShot.cgi, WebKit.cgi, ModWebKit, ModPython and ModSnake. OneShot.cgi is the most convenient for development, because it loads everything from scratch. ModWebKit is the fastest and hence, the most popular choice for deployment.
The WebKit Install Guide already contains the information you need to connect your web server and AppServer. You should read the one in your distribution located in Webware/WebKit/Docs/InstallGuide.html, or you can read the on-line copy from the last release.
If you are using an adapter, you may often want to clean up the URL, which might look like http://somewhere/WK/ShowItem?item=5, but could be made to look like http://somwhere/item/5 using mod_rewrite. See ModRewriteRecipes for examples.
Some specific web servers that you might want to look at include: * Apache: http://httpd.apache.org/ * OpenSA: http://www.opensa.org/ * Xitami: http://www.xitami.com/
-- (overhauled) ChuckEsterbrook - 30 Oct 2001
How about some more documentation about setting up the Web servers? This information could change frequently, but it would be helpful to people who are just starting out with Web application development.
For example, with Apache one might set up the following entry (from memory) in srm.conf to get the WebKit.cgi program deployed at its own location:
ScriptAlias_ /webkit /home/httpd/cgi-bin/WebKit.cgi
Then, it would be possible to visit the following URL to see the default page:
http://localhost/webkit
And the Examples context would be accessible at...
http://localhost/webkit/Examples
-- PaulBoddie - 08 Nov 2001
A lot of that is covered in ModRewriteRecipes, but maybe that should be more clear -- IanBicking - 08 Nov 2001
Xitami: Do the following, one time, to setup and configure the Xitami web server for use with Webware. Install as instructed by Xitami. Then create a cgi-bin directory, such as C:Xitamicgi-bin. Copy the WebKit.cgi file into the cgi-bin directory you just created. Change the line in WebKit.cgi to point back to your Webware directory. For example: WebwareDir = 'C:/Code/Webware'
Do the following every time you want to start running Xitami/Webware. Start Xitami. Start the Webware AppServer. To test whether everything is working as it should, open up a browser and go to http://localhost/cgi-bin/WebKit.cgi/. Make sure you include the final slash ( / ) as Xitami does not appear to handle / redirection the same way as Apache.
These instructions are based on Windows 98, but should apply to the other platforms supported by Xitami, of which there are many.
-- PatrickOBrien - 15 Dec 2001
Xitami also has a LRWP module for interfacing with the likes of webware, but the interface is backwards -- webware needs to connect as a client, rather than listening as a server -- which means that requests need to be serialized (very bad for performance). I played with it a bit, but it did not seem to be worth the effort.
-- TerrelShumway - 10 Apr 2002
If you have a public web site, and just want it to work, the simplest solution is to get a host that already specifically supports webware: e.g. Python-Hosting.US or Python-Hosting.com.
If you have your own dedicated server, I'll share my hosting scripts if you ask me: projects-zhost@jdiworks.net
-- TerrelShumway - 10 Jul 2004
See WebwareBenchmarks for some recent benchmarks comparing the different Apache Adapters for Webware.
-- ChrisZwerschke - 18 Apr 2010