Tôi đã tạo một số ứng dụng web bằng cách sử dụng Rook
để nghe ip mạng của tôi (192.168.xx.xx) tại cổng 8000. Mọi người trong văn phòng của tôi có thể kết nối với họ chỉ cần nhập http://192.168.xx.xx:8000/page_name
trong trình duyệt. Tôi cần phải theo dõi các trang này sử dụng và tự hỏi làm thế nào tôi có thể nhận được địa chỉ IP mạng của những người kết nối với họ.Nhận địa chỉ IP riêng của người dùng Rook/Shiny trang
Tôi không có kinh nghiệm về phát triển web và từ nghiên cứu được thực hiện cho đến nay dường như sử dụng mã phía máy khách như JavaScript
rất khó (hầu như không thể) để đạt được điều đó, (đúng nếu tôi sai). Vì vậy, câu hỏi của tôi là: là có bất kỳ cách nào để nhận được ip khách hàng mạng bằng cách sử dụng mã phía máy chủ bên trong một ứng dụng Rook? (Nếu cần tôi sẵn sàng thay đổi máy chủ web, bất kỳ giải pháp nào được đánh giá cao).
Cảm ơn và xin lỗi trước khi câu hỏi của tôi có vẻ khó hiểu ... đặc biệt là tôi không chắc chắn nếu các thẻ khác là cần thiết.
EDIT: Tôi cũng sẽ chấp nhận câu trả lời bằng một cái gì đó khác với Rook
(nhưng vẫn trong R
)
EDIT 2: tôi đã thiết Shiny máy chủ sau link này. Tôi đang ở bước cấu hình máy chủ để có được access_log
rằng, theo @Thell, chứa thông tin tôi cần. In The shiny-server.conf
Tôi đã thêm các tuyên bố tương đối và bây giờ là:
run_as shiny;
server {
listen 3838;
location/{
site_dir /var/shiny-server/www;
log_dir /var/shiny-server/log;
directory_index on;
}
}
access_log /home/michelec/log.txt;
dòng cuối cùng nên nói bóng để viết access_log vào thư mục nhà của tôi. Tuy nhiên, không có gì xảy ra, nhật ký vẫn trống. theo here, trong Formats phần, tôi sẽ nhận được một trong các bản ghi:
default ':remote-addr - - [:date] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent"'
short ':remote-addr - :method :url HTTP/:http-version :status :res[content-length] - :response-time ms'
tiny ':method :url :status :res[content-length] - :response-time ms'
dev concise output colored by response status for development use
tùy thuộc nếu bạn để định dạng mặc định hoặc bạn thay đổi nó.
Bạn có thể cung cấp mã của mình không? Không có nhiều điều trên Rook khác với tài liệu cơ bản, do đó, trả lời câu hỏi của bạn có thể sẽ cần một chút thử nghiệm, điều này có thể sẽ yêu cầu một ví dụ tái sản xuất. – SchaunW
@SchaunW cảm ơn bạn đã trả lời. Xin lỗi, tôi chưa có mã cho tác vụ này. Tôi đang nghiên cứu mỗi ngày. Vì nó là, câu hỏi sẽ được trả lời ngay cả chỉ với một (hợp lệ) đầu vào để bắt đầu mã hóa này. – Michele
Tôi đã có một trò chơi với điều này ngày hôm nay - có vẻ như 'ip()' nên là những gì bạn đang sau, nhưng tôi không thể nhận được bất kỳ đầu ra từ nó – alexwhan