Các mã sau đây để tìm ra địa chỉ ip địa phương thực tế (ví dụ như 192.168.1.X
) của máy chủ lưu trữ đã chạy tốt trên một máy devĐơn giản chỉ cần tìm ra địa chỉ IP của máy chủ
$ip = getHostByName(getHostName());
Chuyển nó đến một máy chủ nó bắt đầu đầu ra 127.0.0.1
Dường như getHostName() trả về localhost
mà lần lượt được chuyển đổi thành 127.0.0.1
bởi getHostByName().
Nhìn vào câu hỏi khác ở đây dường như $_SERVER['SERVER_ADDR']
có thể giải quyết các câu đố nhưng điều này cũng đang trở lại 127.0.0.1
Kiểm tra và tìm kiếm đầu ra từ phpinfo()
lợi nhuận không có manh mối để địa chỉ IP thực của máy.
Nghiêm túc, có ai biết bằng chứng đạn (cách đơn giản hơn) để nhận địa chỉ IP của máy chạy tập lệnh không? Tại sao nó khó khăn như vậy để có được dữ liệu cơ bản như vậy mà không làm quay lại?
tôi thực sự không muốn được thể xác định rõ địa chỉ ip trong một tập tin cấu hình ...
Máy chủ của bạn có đang chạy sau proxy/loadbalancer/bộ nhớ cache trên cùng một máy, làm cho 'localhost' hoặc' 127.0.0.1' máy chủ lưu trữ thực sự Apache * đang * chạy không? –
Địa chỉ IP nào bạn muốn, địa chỉ IP được gán cho (các) NIC trên máy hoặc IP công cộng được sử dụng để truy cập máy từ internet? – DaveRandom
@nikc no. nhưng bạn nghĩ nó liên quan đến apache? – zaf