Now a days there are many websites which use your location to show more relevant information to you like for example if you visit gogle maps they will ask your Geo location to show you the maps.So in that case Your browser will show you a message like allow geo location or deny and it depends on the user what they prefers to do.
Now actually how they determine your location?Earlier websites use to determine the Geo location using the IP address but with the introduction of HTML 5 everything changed.Now wiith HTML 5 Geolocation API, web browsers can more accurately detect your location using data from GPS, Wi-Fi networks, cell towers, Bluetooth and the computer’s IP address.So if you allow your browser to send your geolocation it will send your geo location data to that website.
Sometime you may have seen when your facebook friend makes a post it comes like ''near (city)".it is done by the geo location API.
But if you have Google chrome then you can just fake your GEo location very easily.Lets see how to do that.
1. Press F12 (or Ctrl + Shift + I) in Google Chrome to open the Developer Tools.
2. Click the Settings icon in the lower right corner and switch to the Overrides tab. Now you can specify the exact latitude and longitude coordinates that you want to share with that website.
You can use some Postal address finder sites to get the Longitude and Latitude of a place.
After that just refresh the page and google chrome will send the fake Geo location to the site.this trick is useful for web developers who would like to test their geolocation-enabled apps from the same location.