1--TEST--
2Bug #60180 ($_SERVER["PHP_SELF"] incorrect)
3--SKIPIF--
4<?php
5include "skipif.inc";
6?>
7--FILE--
8<?php
9include "php_cli_server.inc";
10php_cli_server_start('var_dump($_SERVER["PHP_SELF"], $_SERVER["SCRIPT_NAME"], $_SERVER["PATH_INFO"], $_SERVER["QUERY_STRING"]);', null);
11
12list($host, $port) = explode(':', PHP_CLI_SERVER_ADDRESS);
13$port = intval($port)?:80;
14
15$fp = fsockopen($host, $port, $errno, $errstr, 0.5);
16if (!$fp) {
17  die("connect failed");
18}
19
20if(fwrite($fp, <<<HEADER
21GET /foo/bar?foo=bar HTTP/1.1
22Host: {$host}
23
24
25HEADER
26)) {
27	while (!feof($fp)) {
28		echo fgets($fp);
29	}
30}
31
32fclose($fp);
33
34$fp = fsockopen($host, $port, $errno, $errstr, 0.5);
35if (!$fp) {
36  die("connect failed");
37}
38
39
40if(fwrite($fp, <<<HEADER
41GET /index.php/foo/bar/?foo=bar HTTP/1.0
42Host: {$host}
43
44
45HEADER
46)) {
47	while (!feof($fp)) {
48		echo fgets($fp);
49	}
50}
51
52fclose($fp);
53
54?>
55--EXPECTF--
56HTTP/1.1 200 OK
57Host: %s
58Connection: close
59X-Powered-By: PHP/%s
60Content-type: text/html
61
62string(18) "/index.php/foo/bar"
63string(10) "/index.php"
64string(8) "/foo/bar"
65string(7) "foo=bar"
66HTTP/1.0 200 OK
67Host: %s
68Connection: close
69X-Powered-By: PHP/%s
70Content-type: text/html
71
72string(19) "/index.php/foo/bar/"
73string(10) "/index.php"
74string(9) "/foo/bar/"
75string(7) "foo=bar"
76