background image

21. $_SERVER[ 

'REMOTE_HOST'

 ] #

 

正在浏览当前页面用户的主机名。   

22. $_SERVER[ 

'REMOTE_PORT'

 ] #

 

用户连接到服务器时所使用的端口。   

23. $_SERVER[ 

'SCRIPT_FILENAME'

 ] #

 

当前执行脚本的绝对路径名。   

24. $_SERVER[ 

'SERVER_ADMIN'

 ] #

 

管理员信息   

25. $_SERVER[ 

'SERVER_PORT'

 ] #

 

服务器所使用的端口   

26. $_SERVER[ 

'SERVER_SIGNATURE'

 ] #包含服务器版本和虚拟主机名的字符

 

串。   

27. $_SERVER[ 

'PATH_TRANSLATED'

 ] #当前脚本所在文件系统(不是文档根目

 

录)的基本路径。   

28. $_SERVER[ 

'SCRIPT_NAME'

 ] #包含当前脚本的路径。这在页面需要指向自己

 

时非常有用。   

29. $_SERVER[ 

'REQUEST_URI'

 ] #

 

访问此页面所需的 URI。   

30. $_SERVER[ 

'PHP_AUTH_USER'

 ] #  

当 PHP 

 

运行在 Apache 模块方式下,并

 

且正在使用 HTTP 

 

认证功能,这个变量便是用户输入的用户名。   

31. $_SERVER[ 

'PHP_AUTH_PW'

 ] #  

当 PHP 

 

运行在 Apache 模块方式下,并且

 

正在使用 HTTP 

 

认证功能,这个变量便是用户输入的密码。   

32. $_SERVER[ 

'AUTH_TYPE'

 ] #  

当 PHP 

 

运行在 Apache 模块方式下,并且正在

 

使用 HTTP 认证功能,这个变量便是认证的类型。

注意:SERVER_NAME 和 HTTP_HOST 的区别(非 80 端口时 HTTP_HOST = 
SERVER_NAME : SERVER_PORT)

常见的元素也就如上加粗部分,利用它们就可以很容易获取完整的 url。

1.

<?

php

2.

/**

3.

 *@author mckee

4.

 *@blog  http://www.phpddt.com

5.

 */

6.

function

 get_page_url

(){

7.

$url 

=

 

(

isset

(

$_SERVER

[

'SERVER_PORT'

])

 

&& 

$_SERVER

[

'SERVER_PORT'

]

 

==

 

'443'

)

 

?

 

'https://'

 

:

 

'http://'

;

8.

$url 

.=

 $_SERVER

[

'HTTP_HOST'

];

9.

$url 

.=

 isset

(

$_SERVER

[

'REQUEST_URI'

])

 

$_SERVER

[

'REQUEST_URI'

]

 

:

 urlencode

(

$_SERVER

[

'PHP_SELF'

])

 

.

 

'?'

 

urlencode

(

$_SERVER

[

'QUERY_STRING'

]);

10.

return

 $url

;

11.

}

12. echo get_page_url

();

13. ?>