Я создал несколько веб-приложений с помощью Rook
, которые прослушивают мой IP-адрес сети (192.168.xx.xx) на порту 8000. Каждый, кто находится внутри моего офиса, может подключиться к ним, просто набрав http://192.168.xx.xx:8000/page_name
в браузере. Мне нужно отслеживать использование этих страниц и задаться вопросом, как я могу получить IP-адрес сети тех, кто с ними связан.
Я не знаком с веб-разработкой, и из проведенных до сих пор исследований кажется, что использование кода на стороне клиента, такого как JavaScript
, очень сложно (почти невозможно) достичь этого (исправьте меня, если я ошибаюсь). Итак, мой вопрос: есть ли способ получить IP-адрес сетевого клиента с использованием кода на стороне сервера внутри приложения Rook? (При необходимости я бы хотел изменить веб-сервер, любое решение было оценено).
Спасибо и извините заранее, если мой вопрос будет запутанным... в частности, я не уверен, нужны ли другие теги.
EDIT: Я также принимаю ответы, используя что-то отличное от Rook
(но все же в R
)
ИЗМЕНИТЬ 2:
Я установил Shiny Server после этой . Я нахожусь на этапе настройки сервера, чтобы получить access_log
, который, согласно @Thell, содержит необходимую мне информацию. В shiny-server.conf
я добавил относительный оператор и теперь:
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;
последняя строка должна сказать блестящей, чтобы написать access_log в мою домашнюю папку. Однако ничего не происходит, журнал остается пустым. в соответствии с здесь, в разделе "Форматы" я должен получить один из этих журналов:
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
если вы оставите формат по умолчанию или вы его измените.