summaryrefslogtreecommitdiff
path: root/sapi
diff options
context:
space:
mode:
authorPreston L. Bannister <pbannister@php.net>2002-05-09 21:03:30 +0000
committerPreston L. Bannister <pbannister@php.net>2002-05-09 21:03:30 +0000
commitd706e224ac42a066d460c11efe417a794364cdea (patch)
treee04ae7b87981ce3c3db5a576f20fe07fa8795904 /sapi
parentf0141f965f3df34d4dcc046d75555c18ff3650eb (diff)
downloadphp-git-d706e224ac42a066d460c11efe417a794364cdea.tar.gz
Detect when running under IIS and default force_redirect to zero. This This means an explicit php.ini setting is no longer required.
(No extraneous whitespace changes this time :).
Diffstat (limited to 'sapi')
-rw-r--r--sapi/cgi/cgi_main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index d044c95dd1..3ede09e3eb 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -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) {