When is the next revision of Ode coming?

edited October 2012 in Status Updates
@Axl recently asked this very question as part of an unrelated discussion here:


It's a good opportunity to address this question, which I'm sure has occurred to more than just axl and in fact is on my mind more and more these days.

At this point I think it's looking like the end of the year. I have been working on it for a while now, but I lost almost all of that work several months ago (or something like that) when my hosting provider experienced a hardware failure that impacted my account, and then couldn't recover the data from their corrupt backup. Obviously I should have had my own local backup but I didn't. That was a significant set back. But I'm getting the update back on track.

An update is really only part of the equation.

There are some other pieces that I definitely need to get to including:

Documentation for the addin interfaces
Better organized (easy to locate and browse) documentation, addins, themes, and other resources
A few crucial addins

The update along with these other things will really a big step forward for Ode. I sort of consider all of this 'Ode 2.0'.


  • I just thought of a question / request for the next revision: Will it be possible to have it use index.cgi instead of ode.cgi ? That way it would be seen by the web server as the default page to serve up if just 'www.domain.com' is typed into the browser, instead of having to do redirects; or crafting an index.html based on the page.html which is what I did.
  • If you change the name of the script on your server to index.cgi now, what happens?
  • You should be able to change the name of ode.cgi to whatever you want. Perl allows us to define a namespace using a package declaration in the file itself.


    package ode;

    When code refers to stuff in that file (addins for example) it uses that package name.

    Something like:


    Is referring to the package not the filename.

    So this is already a 'feature'. The only thing you should need to be concerned about is the server. Wherever you are now referring to ode.cgi, in an .htaccess file for redirection for example, you'd have to change that to the new name.


    You might also be able to define ode.cgi as an default/index resource just like index.cgi.

    With my hosting account I can use the DirectoryIndex directive in an .htaccess file, like:

    DirectoryIndex index.html

    I can add index.cgi, like:

    DirectoryIndex index.cgi index.html

    But I could just as easily add ode.cgi, like:

    DirectoryIndex ode.cgi index.html

    There is nothing special about the name 'index'. It's just convention. It all depends on the configuration.

    I hope this helps. As always, we're here to help if you have any questions while you're dealing with this stuff. :)
  • edited October 2012
    @passthejoe if I change ode.cgi to index.cgi on my local server, what it does is serve up a page that shows the text of the cgi file, even if I change the ode_config to read index.cgi instead of ode.cgi.

    @robreed Interesting, on what you posted. I'll have to play with it a bit, when I have some brainpower to think about it. I'll probably try the DirectoryIndex first, since I already have an .htaccess file set up. I'll report back. Thanks!
  • edited November 2012
    This sounds like a job for .htaccess

    I avoid the whole thing by using .htaccess to display my site under an empty directory -- http://stevenrosenberg.net/blog instead of http://stevenrosenberg.net/cgi-bin/ode.cgi, both of which work by the way).
  • Yep, and you can take this a step further. You can use .htaccess to redirect a bunch of paths to ode.cgi to avoid a file not found.

    For example:


    You can even have it redirect all requests for subdirectories that don't exist with a single rule if you want to funnel everything to ode.
  • Thanks for the DirectoryIndex tip. I finally decided to test it, and voila! it works. Now I don't have to update the index.html whenever I update the page.html too. Much easier.
Sign In or Register to comment.