You're mixing <Directory> and <Location> directives, and according to the docs, your <Location /borg> configuration prevents access to any URL-path that begins in /borg
Also, It is important to never use <Location> when trying to restrict access to objects in the filesystem. This is because many different webspace locations (URLs) could map to the same filesystem location, allowing your restrictions to be circumvented.
However, you can use mod_perl handlers in <Directory> configurations. If you look at the docs for PerlAccessHandler, you will see that it specifies a configuration scope of DIR which means that it can be used in <Location><Directory> and <File> directives.
That said, i can't think of a way to call both Perl and Python CGIs from within the the same <Directory> config section, if you intend using SetHandler perl-script, because you require two SetHandler directives in the same space...
So what can you do? Hmmm... good question. All you want to do is:
- check a cookie using Perl and either:
- redirect the user to login, or
- run a python script
So why don't have you have one call the other. Either have the python script execute the Perl script, or have the Perl script call the python script, but you'll have to be very careful about what scripts you allow it to call. For instance, if you're careless, and you just allow the user to pass in their own path without checking what it contains, then a path like /borg/../../../rm%20-Rf could be disastrous...
Good luck. I almost exclusively use mod_perl handlers, so I may be missing a trick.