]> granicus.if.org Git - php/commitdiff
Detect when running under IIS and default force_redirect to zero. This This means...
authorPreston L. Bannister <pbannister@php.net>
Thu, 9 May 2002 21:03:30 +0000 (21:03 +0000)
committerPreston L. Bannister <pbannister@php.net>
Thu, 9 May 2002 21:03:30 +0000 (21:03 +0000)
(No extraneous whitespace changes this time :).

sapi/cgi/cgi_main.c

index d044c95dd143bb9613ab809abf700d11148f0490..3ede09e3eb4154b4b90032b10ff67bfe906eccc1 100644 (file)
@@ -577,6 +577,14 @@ int main(int argc, char *argv[])
        /* check force_cgi after startup, so we have proper output */
        if (cfg_get_long("cgi.force_redirect", &force_redirect) == FAILURE) {
         force_redirect = 1;
+               {
+                       /* We don't need force_cgi on if running under IIS. */
+                       char* server_software = getenv("SERVER_SOFTWARE");
+                       char* server_prefix_expected = "Microsoft-IIS";
+                       if (server_software && (0 == strncmp(server_software,server_prefix_expected,strlen(server_prefix_expected)))) {
+                               force_redirect = 0;
+                       }
+               }
        }
        if (cgi && force_redirect) {
         if (cfg_get_string("cgi.redirect_status_env", &redirect_status_env) == FAILURE) {