2016-12-22 7 views
0

Я не могу получить IP-адрес клиента, который мне нужен, чтобы определить его текущее местоположение.Laravel - Получить IP-адрес клиента - Всегда получать результат 127.0.0.1

Я использовал request-> ip(), $ _SERVER ['REMOTE_ADDR'], и я всегда получаю результат 127.0.0.1, который не то, что я хочу.

Что я делаю неправильно?

+0

Перво-наперво: Является ли это локальная установка? Или это открыто? – maiorano84

+0

@ maiorano84 Это локальная установка, я использую Laragon –

+0

@BrunoTeixeira - это ваш url-код, похожий на localhost, 127.0.0.1? –

ответ

4

request->ip() предоставит вам IP-адрес клиента. Вы получаете 127.0.0.1, потому что вы пытаетесь получить доступ к локальному проекту с того же компьютера.

+0

'$ _SERVER ['REMOTE_ADDR']' это IP-адрес клиента, а не IP-адрес сервера. – Devon

+0

Вы правы. Я недавно ответил на вопрос 'SERVER_ADDR' (http://stackoverflow.com/questions/41258208/how-to-get-the-server-ip-with-laravel/41258486#41258486), поэтому я автоматически читаю это как «SERVER_ADDR») Спасибо, я исправил свой ответ. –

0

Иногда ваши клиенты используют ваше приложение через прокси-сервер, поэтому вам не следует зависеть от $ _SERVER ['REMOTE_ADDR'].

Проверить эту ссылку (с небольшим беспокойством о ценных бумагах):
How to get the client IP address in PHP?