В Интернете есть разные типы пользователей, поэтому мы хотим поймать IP-адрес из разных зелий. То есть
1. $_SERVER['REMOTE_ADDR']
- содержит реальный IP-адрес клиента. Это самое надежное значение, которое вы можете найти у пользователя.
2. $_SERVER['REMOTE_HOST']
- Это позволит получить имя хоста, с которого пользователь просматривает текущую страницу. Но для того, чтобы этот скрипт работал, имя хоста Lookups On внутри httpd.conf должно быть настроено.
3. $_SERVER['HTTP_CLIENT_IP']
. Это приведет к выбору IP-адреса, когда пользователь находится в общих интернет-сервисах.
4. $_SERVER['HTTP_X_FORWARDED_FOR']
- Это приведет к выбору IP-адреса у пользователя, когда он находится за прокси
. Таким образом, мы можем использовать эту следующую комбинированную функцию для получения реального IP-адреса от пользователей, которые просматривают разные позиции,
// Function to get the user IP address
function getUserIP() {
$ipaddress = '';
if (isset($_SERVER['HTTP_CLIENT_IP']))
$ipaddress = $_SERVER['HTTP_CLIENT_IP'];
else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_X_FORWARDED']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED'];
else if(isset($_SERVER['HTTP_X_CLUSTER_CLIENT_IP']))
$ipaddress = $_SERVER['HTTP_X_CLUSTER_CLIENT_IP'];
else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_FORWARDED']))
$ipaddress = $_SERVER['HTTP_FORWARDED'];
else if(isset($_SERVER['REMOTE_ADDR']))
$ipaddress = $_SERVER['REMOTE_ADDR'];
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
Я был во многих местах, включая старый пост, которым вы любезно поделились @jdv. Но это привело меня к хорошему обходному пути. В конце концов я нашел ответ, почему Firefox воспроизводит звук, а Chrome и Safari - нет. Это не синтаксис HTML, это не кодировка файлов, ее можно найти здесь: https://bitmovin.com/play-not-play-new-autoplay-policies-safari-11-chrome-64 /