Trên máy khách, tôi có thể sử dụng window.location.hostname
để lấy tên máy chủ. Làm thế nào tôi có thể nhận được như vậy trên máy chủ? Tôi cần điều này để làm việc phía sau proxy Apache, rất tiếc, Meteor.absoluteUrl()
cho tôi localhost:3000
. Tôi cũng muốn nó hoạt động cho các miền khác nhau, tôi muốn một ứng dụng Meteor cung cấp các kết quả khác nhau cho các miền khác nhau.Meteor: Cách lấy tên máy chủ, phía máy chủ
Câu hỏi này có phần liên quan: Get hostname of current request in node.js Express
Điều này không giải quyết được vấn đề của mình về 'Meteor.absoluteURL' không hoạt động. Nếu 'ROOT_URL' không được đặt chính xác, vui lòng giải thích cách đặt chính xác. –
Đây là giải pháp tốt hơn vì nó sẽ cung cấp cho bạn tên miền của bạn từ 'ROOT_URL'. Tên máy chủ từ câu trả lời khác sẽ là tên máy chủ 'dạng ngắn', ví dụ: trên mac 'Meteors-macbook' hoặc trên AWS một cái gì đó như 'ip-10-100-12-123' có thể được đặt bởi máy chủ. Máy chủ không thể biết tên máy chủ bên ngoài của chính nó trừ khi nó thực hiện tra cứu ip ngược lại và trong trường hợp này, ai đó có thể dễ dàng xâm nhập nó vào một tên máy chủ khác. Câu trả lời này là an toàn nhất và được đảm bảo nhất để cung cấp cho bạn tên máy chủ chính xác. – Akshat
@NathanielFord ngoài trong sản xuất môi trường thiên thạch sẽ không bắt đầu trừ 'ROOT_URL' được cung cấp. – Akshat