diff --git a/linkchecker.module b/linkchecker.module
index e51619e..5e0dc5d 100644
--- a/linkchecker.module
+++ b/linkchecker.module
@@ -1200,6 +1200,20 @@ function linkchecker_parse_fields($bundle, $entity, $type) {
             foreach ($language as $item) {
               $options = drupal_parse_url($item['url']);
               $title = !empty($item['title']) ? $item['title'] : '';
+              if (!url_is_external($options['path'])) {
+                if (module_exists('path')) {
+                  if ($path = path_load(array('alias' => $options['path']))) {
+                    $options['path'] = $path['source'];
+                  }
+                }
+                if (!menu_get_item($options['path'])) {
+                  $options['external'] = TRUE;
+                  $options['path'] = 'http://' . $options['path'];
+                }
+              }
+              else {
+                $options['external'] = TRUE;
+              }
               $text_items[] = l($title, $options['path'], $options);
               $text_items[] = _linkchecker_check_markup($title, NULL, $entity->language, TRUE);
             }
