Захватывать простые попадания на свой собственный сайт / сервлет просто, как пирог - если вы просто хотите узнать, какие URL посещены, вы почти всегда можете настроить свой веб-сервер на запись этого в файл журнала. (Затем при желании вы можете разобрать и вставить это в вашу базу данных).
Для захвата исходящих ссылок требуется немного больше работы, и есть много способов сделать это, причем лучший из них зависит от ваших конкретных требований (сложность URL / методов, сложность альтернативных атрибутов ссылок, таких как target
, желаемая надежность , желаемая производительность, желаемая полнота и т. д.).
Одним из решений, как указано выше, является изменение всех исходящих ссылок на ссылки на страницу перенаправления на вашем собственном сайте с целью в качестве параметра. Затем в ваших типичных журналах веб-сервера вы увидите что-то вроде http://example.com/redir.html?target=http%3A%2F%2Fwww.bbc.co.uk%2Fnews
, из которого вы можете легко разобрать целевой URL.
Другой вариант - запуск ручного запроса к вашему серверу при нажатии на ссылку (обычно это изображение 1x1), к которому вы можете добавить любые параметры запроса, которые вам нравятся, и затем извлечь их из вашего файла журнала. Это может включать или не включать в себя прерывание действия click с помощью прослушивателя событий javascript, а затем повторное инициирование изменения страницы в дальнейшем, в зависимости от того, как именно вы делаете запрос, как часто это приведет к состоянию гонки, если не будет явно обработано.
Все вышеперечисленные опции, которые делают явные запросы с целью создания строки в лог-файлах, могли бы вместо этого сделать запрос к определенной странице (например, JSP), которая записывает записи непосредственно в вашу базу данных, если требуется (хотя в идеале) это все равно будет вести некоторый журнал для повторной попытки неудачных вставок).
Проработав в веб-аналитике несколько лет, я могу вам сказать, что удивительно, сколько разных ситуаций нужно учитывать, если вы хотите собрать как можно больше точной информации. Если это просто для игрушечного веб-сайта для вашего собственного назидания, то, вероятно, будет приемлема любая техника, но как только вы начнете придавать вес фигурам, вам действительно нужно заботиться о вещах, которые вы никогда не рассматривали. Существует причина, по которой существует рынок для нескольких относительно дорогих программных пакетов для веб-аналитики ...: -)
Редактировать: Как следует из комментария Пракаша, я бы порекомендовал проверить уже имеющиеся бесплатные инструменты веб-аналитики и интегрировать их, если вы действительно заботитесь о результатах. Если вы просто делаете это из любопытства или в виде одноразового проекта с низкой важностью, тогда непременно запачкайте руки.