Related Articles

Related Articles

What is the difference between HTTP_HOST and SERVER_NAME in PHP?
  • Last Updated : 05 Nov, 2018

HTTP_HOST: It is fetched from HTTP request header obtained from the client request

Example:

Website: http://www.geeksforgeeks.org
HTTP_HOST: www.geeksforgeeks.org

HTTP_SERVER: It is fetched from the server name based on the host configuration.

Example:

Website: http://www.geeksforgeeks.org
HTTP_SERVER: Display the server name
HTTP_HOST SERVER_NAME
It retrieve the request header from the client. It retrieve the server configuration.
It is not reliable since its value can be modified. It is more reliable as its value comes from sever configuration.
Syntax: $_SERVER[‘HTTP_HOST’] Syntax: $_SERVER[‘SERVER_NAME’]
It gives the domain name of the host where the request is fulfilled. It gives the server name specified in host configuration.
Example: localhost:8080 Example: www.google.com
It is based on request from client. It is based on configuration of web server.
As it is directly related to request so it is used in most of the applications. It does not give any information about the request at all.
It is taken from the target host. It is taken from server configuration.
It is client controlled value. It is server controlled value
http://www.google.com
HTTP_HOST: www.google.com
http://www.google.com
HTTP_SERVER: google.com

Example of HTTP_HOST:



filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
 echo $_SERVER['HTTP_HOST']; 
?>

chevron_right


Output:

It display the host name.

Example of HTTP_SERVER:

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
echo $_SERVER['SERVER_NAME'];
?>

chevron_right


Output:

It display the server name.

Note: In case of localhost, HOST and SERVER name both will same.

My Personal Notes arrow_drop_up
Recommended Articles
Page :