I want to develop a CGI application that has to run under Windows and Linux (IIS and Apache)
What is the best technology to do that?
I would prefer Java, but I am not sure if there is a problem with Java in an IIS.
For plain CGI, Java's startup time is going to be a killer when the process forks. It'll be frustrating even for the low loads you're expecting.
I would, honestly, recommend you use Python for this instead as it will have the right balance of startup / execution speed and "batteries included" features for CGI development.
Here's a link if you're intersted: http://docs.python.org/library/cgi.html
Completely depends on your application what
For a simple web app its hard to beat Vanilla php, using the LAMP stack with sqlite. As php will let you do almost anthing almost anywhere you need to be disciplined about how you structure your code -- but otherwise its a good solid working environment.
At the other end of the scale are the J2EE behemoths Weblogic and Websphere. These are monsters in terms of complexity and learning curve but if you are planning on 100s of transactions per second, in a secure environment with bullet proof reliability -- and you have deep pockets -- nothing will beat it.
The only sure answer form you post is IIS, ActiveScript .NET is out of the picture if you want to deploy under *nix or anything other than windows.
java and CGI is not a good match! If I really had to do a CGI then I would go wit Perl CGI module. Perl should work with IIS too, but I cannot confirm this.