Retrieving Visitor IP Addresses with Cloudflare in PHP
When tracking visitors to a website, logging their IP addresses is a common practice. However, utilizing Cloudflare for caching can introduce an issue, as the IP addresses returned may be those of Cloudflare's servers. This article explores a method to retrieve the actual visitor IP addresses while utilizing Cloudflare.
Cloudflare provides additional server variables that can aid in IP address retrieval:
To use these variables, implement the following code:
if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}
This code updates the $_SERVER['REMOTE_ADDR'] variable with the actual visitor IP address, if it is available through Cloudflare's headers.
It is important to note that if the validity of the IP address is crucial, verifying that the $_SERVER["REMOTE_ADDR"] value represents a valid Cloudflare IP address may be necessary. This is because malicious actors could potentially manipulate the header to connect directly to the server IP.
Disclaimer: All resources provided are partly from the Internet. If there is any infringement of your copyright or other rights and interests, please explain the detailed reasons and provide proof of copyright or rights and interests and then send it to the email: [email protected] We will handle it for you as soon as possible.
Copyright© 2022 湘ICP备2022001581号-3