Plack::Middleware::IIS6ScriptNameFix - fixes wrong SCRIPT_NAME and PATH_INFO that IIS6 sets
# in your app.psgi
use Plack::Builder;
builder {
enable "IIS6ScriptNameFix";
$app;
};
# Or from the command line
plackup -s FCGI -e 'enable "IIS6ScriptNameFix"' /path/to/app.psgi
This middleware fixes wrong SCRIPT_NAME
and PATH_INFO
set by IIS6.
By default, this middleware checks if SERVER_SOFTWARE
PSGI environment matches what Microsoft IIS server 6-9 would set for FastCGI. By setting force
to true (1), this middleware always applies the fix, regardless of the SERVER_SOFTWARE
string.
Use this option if the environment is broken similar to IIS, or if the IIS is updated and the regular expression in this module doesn't match any more e.g. you're running IIS 10.
Florian Ragwitz