fREW Schmidt wrote:
I am a little confused about how CAD is supposed to work I guess.
Let's see if we can help...
First off, I have a directory, call it abc.
That right there is kind of a red-flag. Not that you're doing anything wrong, but Apache has a weird
notion of PATH_INFO when a real directory exists. And Dispatch relies on PATH_INFO for parsing. You
can check what Apache thinks it is by printing the $ENV{PATH_INFO} in your Dispatch.pm.
I think this is all you might need to see from there:
<Directory "c:/path/to/abc">
SetHandler perl-script
PerlHandler ACD::Dispatch
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Why are you using a Directory for this? I'm not sure if that affects what Apache does with PATH_INFO
or not, but I usually use a Location. Especially since your not serving things out of that directory
directly (instead you're using ACD::Dispatch to provide a "virtual" directory).
Ok, so here is what has been happening:
Go to:
localhost/abc/
Get:
Home, welcome
What is PATH_INFO here? I would expect it to be ''
Go to:
localhost/abc/fdjksalfdsafdsa
Get:
Home, welcome
What is PATH_INFO here? It looks like it should be 'fdjksalfdsafdsa', but Dispatch looks like it's
behaving with a PATH_INFO of ''.
Go to:
localhost/abc/jkfldjskljfdkls/home_othercontroller
Get:
Error'd
Again, PATH_INFO looks like it should be 'jkfldjskljfdkls/home_othercontroller' but Dispatch behaves
like it's "home_othercontroller"
Go to:
localhost/abc/jkfldjskljfdkls/home_othercontroller/some_rm
Get:
Home/OtherController, some_rm
Similar to the above.
So I guess my questions are: why is it ignoring that first directory?
I think you've hit on a weirdism of Apache changing the PATH_INFO if the real directory (in this
case "abc") exists. Try changing the directory name to something else and see if that changes anything.
And
do I actually have to put the startrunmode in the dispatcher? It seems to
be ignoring the one set in OtherController.pm.
No, the start run mode should be executed if no run mode is given in the PATH_INFO. Try turning on
debugging and see if you can get any more information.
--
Michael Peters
Plus Three, LP
##### CGI::Application community mailing list ################
## ##
## To unsubscribe, or change your message delivery options, ##
## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ##
## ##
## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ##
## Wiki: http://cgiapp.erlbaum.net/ ##
## ##
################################################################