Подтвердить что ты не робот

Как найти неработающие ссылки на веб-сайте

Какие методы или инструменты рекомендуются для поиска неработающих ссылок на веб-сайте?

У меня есть доступ к лог файлам, поэтому можно было бы разглядеть эти поиски 404 ошибок, но хотелось бы что-то автоматическое, которое будет следовать (или пытаться следовать) всем ссылкам на сайте.

4b9b3361

Ответ 1

Для Chrome Extension есть гексометр

Смотрите LinkChecker для Firefox.

Для Mac OS существует инструмент Integrity, который может проверять URL-адреса на наличие битых ссылок.

Для Windows есть Xenu Link Sleuth.

Ответ 2

Просто нашел wget script, который делает то, о чем вы просите.

wget --spider  -o wget.log  -e robots=off --wait 1 -r -p http://www.example.com

Кредит для этого относится к этой странице.

Ответ 4

Смотрите linkchecker tool:

LinkChecker - бесплатный, лицензированный веб-сайт, лицензированный веб-сайт. LinkChecker проверяет ссылки в веб-документах или на полных веб-сайтах.

Ответ 5

Либо используйте инструмент, который анализирует ваши файлы журналов и дает вам отчет об "неработающих ссылках" (например, Analog или Google Инструменты для веб-мастеров) или запустите инструмент, который заманивает ваш веб-сайт и сообщает о неработающих ссылках (например, W3C Link Checker).

Ответ 6

В приложении .NET вы можете настроить IIS на передачу всех запросов на ASP.NET, а затем в ваш глобальный обработчик ошибок вы можете поймать и зарегистрировать 404 ошибки. Это то, что вы могли бы сделать, помимо того, что вы просматривали свой сайт, чтобы проверить наличие внутренних недостающих ссылок. Это может помочь найти неработающие ссылки из других сайтов, и вы можете исправить их с 301 переадресацией на правильную страницу.

Чтобы протестировать ваш сайт внутри, также есть инструментарий Microsoft SEO.

Конечно, лучший способ - избежать проблемы во время компиляции! В ASP.NET вы можете приблизиться к этому, потребовав, чтобы все ссылки были созданы из статических методов на каждой странице, чтобы там было только одно место, где генерируется любой заданный URL. например http://www.codeproject.com/KB/aspnet/StronglyTypedPages.aspx

Если вам нужен полный искатель С#, здесь есть: - http://blog.abodit.com/2010/03/a-simple-web-crawler-in-c-using-htmlagilitypack/

Ответ 7

Наш коммерческий продукт DeepTrawl делает это и может использоваться как на Windows/Mac.

Раскрытие информации: Я ведущий разработчик DeepTrawl.

Ответ 8

Лучший способ - создать небольшой бот, который будет работать по всему сайту и запишет результат. Я сделал это, чтобы проверить свои сайты перед развертыванием, и он работает очень хорошо.

Ответ 9

Лучше всего сбить своего собственного паука на выбранном языке скриптов, это можно сделать рекурсивно по строкам:

// Pseudo-code to recursively check for broken links
// logging all errors centrally
function check_links($page)
{
    $html = fetch_page($page);
    if(!$html)
    {
        // Log page to failures log
        ...
    }
    else
    {
        // Find all html, img, etc links on page
        $links = find_links_on_page($html);
        foreach($links as $link)
        {
            check_links($link);
        }
    }
}

После того, как ваш сайт получил определенный уровень внимания от Google, их инструменты для веб-мастеров бесценны при показе неработающих ссылок, с которыми могут столкнуться пользователи, но это довольно реакционно - мертвые ссылки могут быть вокруг в течение нескольких недель, прежде чем google индексирует их и регистрирует 404 в вашей панели веб-мастеров.

Написание собственного script, как показано выше, покажет вам все возможные неработающие ссылки, не дожидаясь, пока Google (инструмент для веб-мастеров) или ваши пользователи (404 в журналах доступа) будут спотыкаться о них.

Ответ 10

LinkTiger кажется очень отполированной (хотя и несвободной) услугой для этого. Я не использую его, просто хочу добавить, потому что он еще не упоминался.

Ответ 11

Там есть приложение Windows под названием CheckWeb. Его больше не разрабатывают, но он работает хорошо, и код открыт (С++, я считаю).

Вы просто даете ему URL-адрес, и он сканирует ваш сайт (и внешние ссылки, если вы выберете), сообщив о любых ошибках, изображении/странице "вес" и т.д.

http://www.algonet.se/~hubbabub/how-to/checkweben.html