FAQ

[ Start > PikeApps > Pike ScriptRunner > FAQ ] [ Edit this Page | Show Page Versions | Show Raw Source ]


Q. Why are you using FastCGI and not an Apache module? mod_whatever rules!

A. While the sound of your favorite interpreter running within the web server context may sound cool, there are some drawbacks:

- It's webserver specific. While most people use Apache, not everyone does, and using FastCGI allows us to offer support for any webserver that supports it.

- Embedded interpreters can be a big security hole. It'd be far too easy to bring down or DOS the webserver with malicious code (not to mention the inevitable bug in the ScriptRunner Apache module code). Here, we just hose the FastCGI app, and the webserver starts up a new one.

Some benefits of using FastCGI:

- It's webserver agnostic. Just about every webserver in use supports it.

- It's highly efficient. You get 90-95% of the performance of an embedded interpreter with less risk.

- FastCGI applications can be load balanced, even split across multiple servers. Your ScriptRunner instance can be installed inside a firewall, for instance.

Q. Why Pike? I already have Python!

A. We try not to get into language wars, and would rather that each person work with what they prefer. We like Pike, and think it's a pretty good choice for a lot of applications, especially if you're familiar with Java or C/C++. ScriptRunner simply gives you another choice. Try it, you might just find yourself more efficient while programming in Pike. For more information about Pike, check out http://www.gotpike.org .

Q. How do I know if I've got things set up properly?

A. If you point your web browser at the location of the ScriptRunner.fcgi application, you should get a response giving you details of the ScriptRunner version, and details of the request.

Q. OK, I've tried that but I don't get anything back from the server.

A. Check your server error log (error_log on Apache). Errors from the ScriptRunner appliction don't get returned to the client, so if there was a problem starting up, that's where you'd see the error. Assuming your FastCGI support is set up properly, these errors typically fall into one of two categories:

- not all prerequisites are installed. ScriptRunner requires Public.Web.FastCGI, which in turn requires the FastCGI SDK to be installed (often called libfcgi). If these aren't installed, ScriptRunner won't compile.

- the "magic" startup line isn't configured properly. This meanse either you don't have the right path to the Pike binary, or you've neglected to set the -M option properly (it should point to the full path to the ScriptRunner installation, without spaces). This is because some web servers (such as Apache) don't start the FastCGI application with the current working directory set to the directory the application is in. There are probably server configuration settings to get around that, suggestions are welcome here!

Q. The examples/docs are terrible. When are you going to have something real?

A. Yes, we know. They assume a certain amount of familiarity with Pike. We'll get to that eventually. In the mean time, send an email to pike@roxen.com for assistance.


Powered by PikeWiki2

 
gotpike.org | Copyright © 2004 - 2009 | Pike is a trademark of Department of Computer and Information Science, Linköping University