Khái niệm, định nghĩa Biến $_SERVER trong PHP là gì?

Biến $_SERVER là một mảng chứa thông tin như header, path, và vị trí script. Các entry trong mảng này được tạo bởi Web Server. Sẽ không có sự bảo đảm rằng mỗi Web Server sẽ cung cấp bất kỳ biến nào trong dạng biến Server này.

Biến Miêu tả
$_SERVER[‘PHP_SELF’] Tên file của script đang thực thi hiện tại, liên quan tới Document root
$_SERVER[‘argv’] Mảng các tham số được truyền tới script. Khi script đó chạy trên command line, nó cung cấp dạng truy cập kiểu C-style tới các tham số dòng lệnh. Khi được gọi thông qua phương thức GET, biến này sẽ chứa chuỗi truy vấn
$_SERVER[‘argc’] Chứa số tham số dòng lệnh được truyền cho script nếu chạy trên command line
$_SERVER[‘GATEWAY_INTERFACE’] Server đang sử dụng phiên bản CGI specification nào, ví dụ ‘CGI/1.1’
$_SERVER[‘SERVER_ADDR’] Địa chỉ IP của Server mà script đang thực thi
$_SERVER[‘SERVER_NAME’] Tên Server host mà script đang thực thi. Nếu script đang chạy trên một virtual host, biến này sẽ là giá trị được định nghĩa cho virtual host đó
$_SERVER[‘SERVER_SOFTWARE’] Chuỗi nhận diện Server, được cung cấp trong các header khi phản hồi lại các yêu cầu
$_SERVER[‘SERVER_PROTOCOL’] Tên và phiên bản của giao thức thông tin mà thông qua nó trang được yêu cầu, ví dụ: ‘HTTP/1.0’;
$_SERVER[‘REQUEST_METHOD’] Phương thức yêu cầu nào được sử dụng để truy cập trang, ví dụ: ‘GET’, ‘HEAD’, ‘POST’, ‘PUT’
$_SERVER[‘REQUEST_TIME’] Là timestamp của phần bắt đầu yêu cầu. Có sẵn từ PHP 5.1.0
$_SERVER[‘QUERY_STRING’] Chuỗi truy vấn thông qua đó trang được truy cập
$_SERVER[‘DOCUMENT_ROOT’] Thư mục Document root mà script đang thực thi, như được định nghĩa trong file cấu hình của Server
$_SERVER[‘HTTP_ACCEPT’] Nội dung của Accept: header từ yêu cầu hiện tại, nếu có một
$_SERVER[‘HTTP_ACCEPT_CHARSET’] Nội dung của Accept-Charset: header từ yêu cầu hiện tại, nếu có một . Ví dụ: ‘iso-8859-1,*,utf-8’
$_SERVER[‘HTTP_ACCEPT_ENCODING’] Nội dung của Accept-Encoding: header từ yêu cầu hiện tại, nếu có một. Ví dụ: ‘gzip’
$_SERVER[‘HTTP_ACCEPT_LANGUAGE’] Nội dung của Accept-Language: header từ yêu cầu hiện tại, nếu có một. Ví dụ: ‘en’
$_SERVER[‘HTTP_CONNECTION’] Nội dung của Connection: header từ yêu cầu hiện tại, nếu có một. Ví dụ: ‘Keep-Alive’
$_SERVER[‘HTTP_HOST’] Nội dung của Host: header từ yêu cầu hiện tại, nếu có một
$_SERVER[‘HTTP_REFERER’] Địa chỉ của trang mà hướng user agent tới trang hiện tại
$_SERVER[‘HTTP_USER_AGENT’] Đây là chuỗi diễn đạt việc user agent đang truy cập trang. Ví dụ đặc trưng là: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586)
$_SERVER[‘HTTPS’] Thiết lập tới một giá trị non-empty nếu script được truy vấn thông qua giao thức HTTPS
$_SERVER[‘REMOTE_ADDR’] Địa chỉ IP từ đó người dùng quan sát trang hiện tại
$_SERVER[‘REMOTE_HOST’] Tên Host từ đó người dùng quan sát trang hiện tại
$_SERVER[‘REMOTE_PORT’] Cổng (port) đang được sử dụng trên máy người dùng để giao tiếp với Web Server
$_SERVER[‘SCRIPT_FILENAME’] Pathname tuyệt đối của script đang thực thi hiện tại
$_SERVER[‘SERVER_ADMIN’] Giá trị được cung cấp cho chỉ thị SERVER_ADMIN (với Apache) trong file cấu hình Web Server
$_SERVER[‘SERVER_PORT’] Cổng (port) trên máy Server đang được sử dụng bởi Server để giao tiếp. Cài đặt mặc định là ’80’
$_SERVER[‘SERVER_SIGNATURE’] Chuỗi chứa phiên bản Server và tên host mà được thêm tới trang được tạo bởi Server, nếu được kích hoạt
$_SERVER[‘PATH_TRANSLATED’] Path cho script hiện tại
$_SERVER[‘SCRIPT_NAME’] Chứa path của script hiện tại. Biến này hữu ích cho các trang mà cần trỏ tới chính chúng
$_SERVER[‘REQUEST_URI’] URI mà được cung cấp để truy cập trang này, ví dụ ‘/index.html
$_SERVER[‘PHP_AUTH_DIGEST’] Khi chạy dưới Apache như là module đang thực hiện Digest HTTP authentication, biến này được thiết lập là ‘Authorization’ header được gửi bởi Client
$_SERVER[‘PHP_AUTH_USER’] Khi đang chạy dưới Apache hoặc IIS (ISAPI on PHP 5) như là module đang thực hiện HTTP authentication, thì biến này được thiết lập là username được cung cấp bởi người dùng
$_SERVER[‘PHP_AUTH_PW’] Khi đang chạy dưới Apache hoặc IIS (ISAPI on PHP 5) như là module đang thực hiện HTTP authentication, thì biến này được thiết lập là password được cung cấp bởi người dùng
$_SERVER[‘AUTH_TYPE’] Khi đang chạy dưới Apache như là module đang thực hiện HTTP authenticated, thì biến này được thiết lập là authentication type