US7325045B1 - Error processing methods for providing responsive content to a user when a page load error occurs - Google Patents

Error processing methods for providing responsive content to a user when a page load error occurs Download PDF

Info

Publication number
US7325045B1
US7325045B1 US10/634,633 US63463303A US7325045B1 US 7325045 B1 US7325045 B1 US 7325045B1 US 63463303 A US63463303 A US 63463303A US 7325045 B1 US7325045 B1 US 7325045B1
Authority
US
United States
Prior art keywords
alternate
web page
url
target
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US10/634,633
Inventor
Udi Manber
Lawrence Tesler
Jonathan Leblang
Jeffrey P. Bezos
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
A9 com Inc
Original Assignee
A9 com Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by A9 com Inc filed Critical A9 com Inc
Priority to US10/634,633 priority Critical patent/US7325045B1/en
Assigned to A9.COM, INC. reassignment A9.COM, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: AMAZON.COM, INC.
Assigned to AMAZON.COM, INC. reassignment AMAZON.COM, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BEZOS, JEFFREY P., MR., LEBLANG, JONATHAN, MR., TESLER, LAWRENCE, MR., MANBER, UDI, MR.
Application granted granted Critical
Publication of US7325045B1 publication Critical patent/US7325045B1/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present invention relates to techniques for handling page load errors that occur when a requested web page or other object is unavailable or otherwise cannot be properly displayed.
  • a user When a user attempts to access a web page via a web browser, various types of errors can occur that prevent the page from being displayed. For example, if the page request is directed to a valid host but to an invalid URL (Uniform Resource Locator), the host may return an “error 404: page not found” error message, which may be displayed within an error page. If the page request does not produce a response from a host at the target address, the web browser may display a default message indicating that the requested page cannot be displayed, or may “hang” until the user performs some action. In addition, in some cases, the page can be retrieved, but cannot be displayed due to script execution errors, unsupported data formats, or other problems relating to the content of the requested page.
  • Uniform Resource Locator Uniform Resource Locator
  • page load errors can occur for various reasons. For example, a given URL that is valid at one time may become invalid. This may occur, for example, if the operator of a particular web site moves or deletes a particular web page, or moves the entire web site to a new host address. In addition, a user may mistype a URL, or may request a web page from a host that is currently not responding. Further, a web page may contain errors, or may contain data formats that are not supported by all web browsers.
  • the present invention provides a system and method for providing an alternate object to a Web user when a requested object cannot be displayed.
  • the alternate object is selected or generated based at least in-part on the URL of the failed object request, and typically contains content that is relevant to the user's browsing session.
  • the alternate object may be displayed in place of the requested object or in a separate window, and may be displayed together with a message or annotation indicating the type or source of the alternate object.
  • One application of the invention involves displaying an alternate web page to a user when a page load error occurs.
  • the system includes a client component that runs on a user computer as part of or in conjunction with a web browser.
  • the client component monitors requests made by the browser, and detects errors, such as but not limited to “error 404: page not found” errors, in which the requested web page or other object cannot be properly displayed.
  • the client component notifies a remote error processing server, which uses the target URL of the failed request to identify, and optionally generate, an alternate object to display to the user.
  • one of the following types of alternate objects may be displayed: (a) a page retrieved from a replacement URL to which the requested page has been moved or copied, (b) a cached or archived version of the requested page, (c) a page that is related or similar to the requested page, (d) a page retrieved from a closely matching URL found in the user's clickstream history, (e) a text, PDF, or other non-HTML version of the requested page, or (f) a dynamically generated page that includes links to one or more of the foregoing types of alternate pages.
  • An important aspect of the system is that it operates generally independently of the manner in which the users connect to the Internet. For example, users need not connect to the Internet through a special proxy server or other intermediate system that provides error processing services.
  • the invention also comprises methods for identifying URLs that are substitutes, as may exist, e.g., when a web page or other object is moved or copied to a new location.
  • One such method involves analyzing user clickstreams to identify a pair of web pages or sites that are related due to the high frequency with which users who view one also view the other. The content of the two related web pages or sites may then be compared to determine whether specific pages are substantially identical.
  • FIG. 1 illustrates a system that processes page load errors according to one embodiment of the invention.
  • FIG. 2 illustrates a sequence of interactions that may occur between a web browser and the error processing server of FIG. 1 to handle a page load error.
  • FIG. 3 illustrates on example of a process that may be used by the error processing server of FIG. 1 to identify or generate an alternate object for the URL of a failed page request.
  • FIG. 4 illustrates one example of a type of alternate page that may be displayed when a page load error occurs.
  • FIG. 5 illustrates another example of a type of alternate page that may be displayed when a page load error occurs.
  • the invention will be described primarily in the context of requests for web pages. As will be recognized, the invention may also be applied to the retrieval of other types of objects and resources, such as PDF documents and image files.
  • FIG. 1 illustrates a system for handling page load errors in accordance with one embodiment of the invention.
  • the system includes an error processing client component 30 that runs on a user computer 32 , or another type of user computing device (PDA, cell phone, etc.), in conjunction with a web browser 34 .
  • the error processing client 30 may, for example, be implemented as a browser plug-in, or within the native code of the web browser 34 .
  • the error processing client may be a standalone component that monitors the operation of the web browser 34 and displays messages outside of the web browser.
  • the web browser 34 need not be a standalone component, but rather may, for instance, be an integral component of an operating system.
  • the error processing client 30 communicates over the Internet with a remote error processing server 40 , which may include one or more physical servers (two shown).
  • the error processing server 40 runs an application 42 which is responsible generally for providing alternate web pages to users when page load errors occur.
  • the error processing server 40 is depicted as communicating with a single user computer 32 , the error processing server will typically provide error handling services to many user computers, all of which run a web browser 34 and an error processing client 30 .
  • the error processing client 30 and server 40 additionally act generally as a metadata client and metadata server, respectively. Specifically, the error processing client 30 notifies the error processing server 40 of the URL of the web page currently being retrieved or displayed by the browser 34 , and the error processing server 40 responds by returning metadata for this web page.
  • This metadata may include, for example, site statistics and links to related web pages, and may be displayed to the user in conjunction with the web page currently being viewed.
  • the error processing server 40 also maintains a database 44 of user clickstream histories (histories of URLs accessed by specific users). Examples of systems for generating and displaying web page metadata are described, for example, in U.S. Pat. No. 6,282,548.
  • the error processing client 30 operates generally by monitoring page requests issued by the web browser 34 to detect page load errors.
  • the errors detected by the error processing client may include “404—page not found” errors, timeout errors, script execution errors, errors in which the web server indicates that the requested page is no longer available, and other types of page load errors in which a requested web page cannot be properly displayed.
  • the error processing client 30 preferably reports the error condition to the error processing server 40 , and notifies the error processing server of the target URL of the failed request.
  • the error processing server 40 responds by using the target URL to identify, and optionally generate, an alternate object (typically an alternate web page) to display to the user.
  • an alternate object typically an alternate web page
  • the web browser 34 may be redirected to the URL of the alternate object, or the alternate object may be retrieved or generated by the error processing server 40 and sent to the web browser.
  • an appropriate message may be presented to the user indicating that the requested web page could not be loaded and that an alternate object is being presented.
  • a message or annotation 90 may be added to the page to indicate that a cached version of the requested web page is being displayed.
  • These types of messages 90 may alternatively be displayed in a separate window, frame, or toolbar area of the browser 34 , or possibly outside the browser.
  • the message 90 includes links (three shown) to other alternate objects that may be viewed in lieu of the desired web page.
  • an intermediate page may be presented with links to one or more of the alternate objects.
  • One example of such an intermediate page is shown in FIG. 5 .
  • a further variation is to display the links to alternate objects within a non-web-page display area generated by the error processing client 30 , rather than as part of a web page. For instance, these links may be displayed within a browser toolbar area (see FIG. 5 ) generated by the error processing client 30 .
  • FIG. 1 illustrates some of the server side components that may be included within a given system to identify and display alternate web pages of the type described above.
  • One such component is a URL-to-URL mapping table 50 that maps specific URLs to URLs of alternate objects.
  • a given target URL may be mapped by this table to one or more substitute URLs, and/or to one or more related URLs (i.e., URLs of related web pages). If both substitute and related URLs are included within the mappings, the table 50 may indicate whether or not a given alternate URL is a substitute for the particular target URL.
  • the task of generating the URL-to-URL mappings may be the responsibility of a web crawler/analyzer program 52 that analyses and compares web pages, and possibly other types of web objects, to identify pairs of URLs that are substitutes or are otherwise related.
  • the web crawler/analyzer 52 may also evaluate user clickstreams as part of this process. For instance, the web crawler/analyzer 52 may initially analyze the clickstreams of many users to identify specific URLs or web sites that are frequently viewed in combination (e.g., during the same browsing session).
  • URLs or web sites may initially be treated as “related.”
  • URL 1 (or web site 1 ) may initially be treated as being related to URL 2 (or web site 2 ) if a significant portion of those who accessed one also accessed the other.
  • URL 2 (or web site 2 ) if a significant portion of those who accessed one also accessed the other.
  • Various other methods for identifying related URLs may additionally or alternatively be used, including methods that rely on the existence of links between web pages as a basis for measuring web page relatedness. Examples of methods that may be used to identify related URLs are described in the following U.S. patent documents: US Patent Pub. 2003/0074369 A1; U.S. Pat. No. 6,182,091; U.S. Pat. No. 5,895,470, and Dean et al, “Finding Related Pages in the World Wide Web,” Elsevier Science B.V., 1999.
  • the web crawler/analyzer 52 may compare the visible content of the objects retrieved from these URLs, and treat the two URLs as substitutes or duplicates if the visible content is substantially identical. Depending upon the outcome of this comparison, a given pair of URLs may be listed in the table 50 either as being “related” or as being “substitutes.” Certain types of objects may be ignored or excluded, such as empty documents and default Apache installation pages.
  • Substitute URLs may also be identified based on redirect messages.
  • the web crawler/analyzer 52 may treat d1.com and d2.com as substitutes if a request for d1.com returns a redirect to d2.com.
  • feedback from users may be used to identify related and/or substitute URLs.
  • a mechanism may be provided for allowing users of the error processing client 30 to explicitly indicate that a given web page or site has moved to a new location. The methods described in U.S. Pat. No. 6,138,113 may also be used.
  • some of the web pages retrieved and analyzed by the web crawler/analyzer 52 may be stored in a web page cache 46 .
  • Web pages may be selected to include in the cache 46 based on the frequencies with which the associated URLs appear within the clickstream histories of users, or based on any other appropriate criteria.
  • the web page cache 46 may be used to return a cached version of a web page that is currently undisplayable. Further, cached versions of web pages may optionally be used to identify web pages that have been moved.
  • the web crawler/analyzer 52 could compare the web page retrieved from a newly discovered URL with a cached version of a page retrieved from a currently non-responsive URL to evaluate whether the new URL replaces (is a substitute for) the non-responsive URL.
  • Selected web pages may also be stored persistently within an archive (not shown) that is accessible to the error processing server 30 .
  • the present invention may be implemented using only a subset of those components and functions described above.
  • the alternate objects may be provided exclusively from the web page cache 46 or an archive, or based exclusively on data stored in the URL-to-URL mapping table 50 .
  • components and methods other than those described herein may be used to identify and/or generate the alternate web pages.
  • FIG. 2 illustrates a typical sequence of interactions that may occur in the preferred embodiment when a page request results in a page load error.
  • the page request (event 1 ) may be a request for a web page, or possibly another type of object, at any target URL.
  • the error processing client 30 may detect the error (event 2 ) by monitoring the content of server responses received by the browser (e.g., to look for predefined error messages, and to look for predefined strings such as “404,” “error,” “page not found,” and “unable to display” in returned web pages).
  • the error processing client may also treat a web server's failure to respond within a fixed or user-configurable timeout period as a page load error. Further, the error processing client may monitor error messages generated by the web browser 34 to detect page load errors.
  • the error processing client 30 Upon detecting a page load error, the error processing client 30 causes the web browser 34 to send a request to the error processing server 40 for an alternate object for the target URL (event 3 ).
  • This request may, in some embodiments, be sent to the error processing server 40 before the error processing client actually detects the error, so that the alternate object may be displayed promptly upon actual detection of the error.
  • the request for the alternate page may optionally specify the type of error detected (e.g., 404, timeout, etc.), in which case the error processing server may take the error type into consideration in selecting a type of alternate page to present.
  • the error processing server 40 selects an alternate object to present to the user (event 4 ), and in some embodiments, generates the selected alternate object.
  • FIG. 3 One example of a method that may be used to perform this task is shown in FIG. 3 , discussed below.
  • the error processing server 40 then returns the alternate object, or the URL of the alternate object, to the web browser 34 (event 5 ).
  • the web browser 34 may display the alternate object in a main browsing window, or in a window or other area that is separate from the main window (e.g., a separate pop-up window).
  • the display of the alternate object may be automatically replaced with a display of the requested page.
  • a background task of the error processing client 30 may periodically attempt to retrieve the requested page while the user views the alternate object.
  • FIG. 3 illustrates one example of a method that may be used by the error processing server application 42 to identify, and in some cases generate, an alternate page or other object in the system of FIG. 1 .
  • the URL-to-URL mapping table and the cache 46 are checked to see if any entries exist for the target URL (block 60 ). If a substitute URL is found in the table (block 62 ), the substitute URL, or an object retrieved by the error processing server 40 from the substitute URL, is returned to the web browser (block 64 ). If no substitute URL is found but a cached version of the requested page exists (block 66 ), the cached version of the requested page is returned (block 68 ).
  • the related URL(s) may be returned, optionally as part of a dynamically-generated web page that includes a separate link for each such related URL (block 72 ).
  • the error processing server 40 may compare the target URL to URLs contained in the user's clickstream history (block 74 ) to determine whether any close matches exists. If a closely matching URL is found (e.g., one that differs from the target URL by only a single character), the browser 34 may be redirected to this closely matching URL, or otherwise caused to display an object retrieved from that URL (block 76 ). Finally, if no alternate object can be identified for the target URL, the error processing server 40 may return a null response (block 78 ), or possibly a default error page.
  • FIG. 4 illustrates the general form of an alternate object that may be displayed to the user.
  • an appropriate annotation 90 may be added to the alternate object, or otherwise displayed within or outside the browser 34 , to indicate the type or source of the alternate object.
  • a menu may also be displayed on the alternate object within or outside of the browser 34 to allow the user to select a different alternate object to view.
  • an intermediate page (which is itself an alternate page) may be presented with links to alternate objects of various types.
  • an intermediate page can be presented with a link to each substitute web page, a link to a cached version of the requested page, and/or a link to each related page.
  • FIG. 5 illustrates the general form of an intermediate page that is displayed in one embodiment.
  • the method shown in FIG. 3 embodies a particular hierarchy of types of alternate objects to be displayed. For example, a cached version of the requested page is displayed only if no substitute URL is found; and related URLs are returned only if no substitute or cached version of the requested page is found.
  • Each user of the system may be permitted to specify or modify this hierarchy to specify how alternate objects are to be selected for display. For instance, a user may be permitted to filter out certain types of alternate objects, or to specify that a particular type of alternate object should be displayed if available.
  • the foregoing methods and components may also be used to handle errors that occur when display objects other than web pages are requested. For example, when a browser 34 attempts to retrieve an image file from a particular URL, an alternate image file may be identified by the error processing server, and displayed within the browser, using the same techniques as described above. As another example, when a user requests a PDF document that is not found, the error processing server 40 may return an HTML version of the requested document or a link thereto.
  • the division of functionality between the error processing client and server components may be varied from that shown and described above. For instance, some or all of the entries in the URL-to-URL mapping table 50 ( FIG. 1 ) can be periodically transmitted to and cached by each client computer 32 . In such embodiments, the error processing client 30 may look up an alternate URL from its locally-stored table, and retrieve an alternate object from that URL, without communicating with the error processing server 40 .

Abstract

A client component runs on a user computer in conjunction with a web browser and detects errors, such as but not limited to “404: page not found” errors, in which a requested web page or other object cannot be displayed. In response to detecting the error, the client component notifies an error processing server, which uses the URL of the failed request to identify an alternate object to display. The alternate object may, for example, be (a) an object retrieved from replacement URL, or from a URL that is otherwise related to the requested object, (b) a cached version of the requested object, (c) an object retrieved from a closely matching URL found in the user's clickstream history, or (d) a dynamically generated page that includes links to one or more of the foregoing types of alternate objects. Also disclosed are methods for identifying alternate objects for a given URL.

Description

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to techniques for handling page load errors that occur when a requested web page or other object is unavailable or otherwise cannot be properly displayed.
2. Description of the Related Art
When a user attempts to access a web page via a web browser, various types of errors can occur that prevent the page from being displayed. For example, if the page request is directed to a valid host but to an invalid URL (Uniform Resource Locator), the host may return an “error 404: page not found” error message, which may be displayed within an error page. If the page request does not produce a response from a host at the target address, the web browser may display a default message indicating that the requested page cannot be displayed, or may “hang” until the user performs some action. In addition, in some cases, the page can be retrieved, but cannot be displayed due to script execution errors, unsupported data formats, or other problems relating to the content of the requested page.
These and other forms of “page load errors” can occur for various reasons. For example, a given URL that is valid at one time may become invalid. This may occur, for example, if the operator of a particular web site moves or deletes a particular web page, or moves the entire web site to a new host address. In addition, a user may mistype a URL, or may request a web page from a host that is currently not responding. Further, a web page may contain errors, or may contain data formats that are not supported by all web browsers.
Regardless of the cause, page load errors, and errors involving requests for other types of displayable objects, can be very frustrating to users. The present invention seeks to address this problem.
SUMMARY OF THE INVENTION
The present invention provides a system and method for providing an alternate object to a Web user when a requested object cannot be displayed. The alternate object is selected or generated based at least in-part on the URL of the failed object request, and typically contains content that is relevant to the user's browsing session. The alternate object may be displayed in place of the requested object or in a separate window, and may be displayed together with a message or annotation indicating the type or source of the alternate object. One application of the invention involves displaying an alternate web page to a user when a page load error occurs.
In a preferred embodiment, the system includes a client component that runs on a user computer as part of or in conjunction with a web browser. The client component monitors requests made by the browser, and detects errors, such as but not limited to “error 404: page not found” errors, in which the requested web page or other object cannot be properly displayed. In response to detecting such an error, the client component notifies a remote error processing server, which uses the target URL of the failed request to identify, and optionally generate, an alternate object to display to the user. For example, if the error involves a request for a web page, one of the following types of alternate objects may be displayed: (a) a page retrieved from a replacement URL to which the requested page has been moved or copied, (b) a cached or archived version of the requested page, (c) a page that is related or similar to the requested page, (d) a page retrieved from a closely matching URL found in the user's clickstream history, (e) a text, PDF, or other non-HTML version of the requested page, or (f) a dynamically generated page that includes links to one or more of the foregoing types of alternate pages.
An important aspect of the system is that it operates generally independently of the manner in which the users connect to the Internet. For example, users need not connect to the Internet through a special proxy server or other intermediate system that provides error processing services.
The invention also comprises methods for identifying URLs that are substitutes, as may exist, e.g., when a web page or other object is moved or copied to a new location. One such method involves analyzing user clickstreams to identify a pair of web pages or sites that are related due to the high frequency with which users who view one also view the other. The content of the two related web pages or sites may then be compared to determine whether specific pages are substantially identical.
Neither this summary nor the following detailed description purports to define the invention. The invention is defined by the claims.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates a system that processes page load errors according to one embodiment of the invention.
FIG. 2 illustrates a sequence of interactions that may occur between a web browser and the error processing server of FIG. 1 to handle a page load error.
FIG. 3 illustrates on example of a process that may be used by the error processing server of FIG. 1 to identify or generate an alternate object for the URL of a failed page request.
FIG. 4 illustrates one example of a type of alternate page that may be displayed when a page load error occurs.
FIG. 5 illustrates another example of a type of alternate page that may be displayed when a page load error occurs.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
For purposes of illustration, the invention will be described primarily in the context of requests for web pages. As will be recognized, the invention may also be applied to the retrieval of other types of objects and resources, such as PDF documents and image files.
FIG. 1 illustrates a system for handling page load errors in accordance with one embodiment of the invention. The system includes an error processing client component 30 that runs on a user computer 32, or another type of user computing device (PDA, cell phone, etc.), in conjunction with a web browser 34. The error processing client 30 may, for example, be implemented as a browser plug-in, or within the native code of the web browser 34. Alternatively, the error processing client may be a standalone component that monitors the operation of the web browser 34 and displays messages outside of the web browser. The web browser 34 need not be a standalone component, but rather may, for instance, be an integral component of an operating system.
The error processing client 30 communicates over the Internet with a remote error processing server 40, which may include one or more physical servers (two shown). The error processing server 40 runs an application 42 which is responsible generally for providing alternate web pages to users when page load errors occur. Although the error processing server 40 is depicted as communicating with a single user computer 32, the error processing server will typically provide error handling services to many user computers, all of which run a web browser 34 and an error processing client 30.
In a preferred embodiment, the error processing client 30 and server 40 additionally act generally as a metadata client and metadata server, respectively. Specifically, the error processing client 30 notifies the error processing server 40 of the URL of the web page currently being retrieved or displayed by the browser 34, and the error processing server 40 responds by returning metadata for this web page. This metadata may include, for example, site statistics and links to related web pages, and may be displayed to the user in conjunction with the web page currently being viewed. In this embodiment, the error processing server 40 also maintains a database 44 of user clickstream histories (histories of URLs accessed by specific users). Examples of systems for generating and displaying web page metadata are described, for example, in U.S. Pat. No. 6,282,548.
The error processing client 30 operates generally by monitoring page requests issued by the web browser 34 to detect page load errors. The errors detected by the error processing client may include “404—page not found” errors, timeout errors, script execution errors, errors in which the web server indicates that the requested page is no longer available, and other types of page load errors in which a requested web page cannot be properly displayed. When such an error event is detected, the error processing client 30 preferably reports the error condition to the error processing server 40, and notifies the error processing server of the target URL of the failed request. The error processing server 40 responds by using the target URL to identify, and optionally generate, an alternate object (typically an alternate web page) to display to the user. The following are examples of the types of alternate objects that may be displayed in accordance with the invention:
    • Web page from substitute URL: A web page retrieved from a substitute URL for the target URL may be displayed to the user. One URL may be considered a substitute for another URL if web pages that are or were previously retrievable from these URLs are substantially identical. A substitute URL may exist, for example, when a web page or site has been moved or copied to a new location. One example of a method that may be used to detect substitute URLs is described below.
    • Cached or archived version of requested web page: A cached or archived version of the requested web page may be presented if such a page exists within a web page cache are archive accessible to the error processing server 40.
    • Related or similar web page: One or more web pages that are related to, but not substitutes for, the requested web page may be presented. Typically, the related web pages come from web sites other than the site to which the target URL corresponds. Various algorithms exists for detecting web pages and web sites that are related to each other, including content-based algorithms, and algorithms that analyze the clickstream histories of users to look for web sites or pages that are commonly accessed within the same browsing session.
    • Web page retrieved from URL with similar spelling. In some cases, a page load error may be the result of the user mistyping the URL. To detect these types of events, the target URL entered by the user may be compared to the URLs in the user's clickstream history, and possibly to common URLs that do not exist in the user's clickstream history. If a close match is found, a web page retrieved from the closely matching URL may be presented.
    • Different format of requested page: A text, PDF, or other non-HTML version of the requested page may be retrieved from a database and presented to the user.
In each of the examples above, the web browser 34 may be redirected to the URL of the alternate object, or the alternate object may be retrieved or generated by the error processing server 40 and sent to the web browser. Regardless of the delivery method used, an appropriate message may be presented to the user indicating that the requested web page could not be loaded and that an alternate object is being presented. For example, as depicted in FIG. 4, if the page is retrieved from a cache, a message or annotation 90 may be added to the page to indicate that a cached version of the requested web page is being displayed. These types of messages 90 may alternatively be displayed in a separate window, frame, or toolbar area of the browser 34, or possibly outside the browser. In this example, the message 90 includes links (three shown) to other alternate objects that may be viewed in lieu of the desired web page.
Rather than displaying the alternate page to the user immediately, an intermediate page may be presented with links to one or more of the alternate objects. One example of such an intermediate page is shown in FIG. 5. A further variation is to display the links to alternate objects within a non-web-page display area generated by the error processing client 30, rather than as part of a web page. For instance, these links may be displayed within a browser toolbar area (see FIG. 5) generated by the error processing client 30.
FIG. 1 illustrates some of the server side components that may be included within a given system to identify and display alternate web pages of the type described above. One such component is a URL-to-URL mapping table 50 that maps specific URLs to URLs of alternate objects. A given target URL may be mapped by this table to one or more substitute URLs, and/or to one or more related URLs (i.e., URLs of related web pages). If both substitute and related URLs are included within the mappings, the table 50 may indicate whether or not a given alternate URL is a substitute for the particular target URL.
The task of generating the URL-to-URL mappings may be the responsibility of a web crawler/analyzer program 52 that analyses and compares web pages, and possibly other types of web objects, to identify pairs of URLs that are substitutes or are otherwise related. As illustrated in FIG. 1, the web crawler/analyzer 52 may also evaluate user clickstreams as part of this process. For instance, the web crawler/analyzer 52 may initially analyze the clickstreams of many users to identify specific URLs or web sites that are frequently viewed in combination (e.g., during the same browsing session). These URLs or web sites may initially be treated as “related.” For example, URL1 (or web site 1) may initially be treated as being related to URL2 (or web site 2) if a significant portion of those who accessed one also accessed the other. Various other methods for identifying related URLs may additionally or alternatively be used, including methods that rely on the existence of links between web pages as a basis for measuring web page relatedness. Examples of methods that may be used to identify related URLs are described in the following U.S. patent documents: US Patent Pub. 2003/0074369 A1; U.S. Pat. No. 6,182,091; U.S. Pat. No. 5,895,470, and Dean et al, “Finding Related Pages in the World Wide Web,” Elsevier Science B.V., 1999.
Once a pair of related URLs or sites has been identified, the web crawler/analyzer 52 may compare the visible content of the objects retrieved from these URLs, and treat the two URLs as substitutes or duplicates if the visible content is substantially identical. Depending upon the outcome of this comparison, a given pair of URLs may be listed in the table 50 either as being “related” or as being “substitutes.” Certain types of objects may be ignored or excluded, such as empty documents and default Apache installation pages.
Substitute URLs may also be identified based on redirect messages. For example, the web crawler/analyzer 52 may treat d1.com and d2.com as substitutes if a request for d1.com returns a redirect to d2.com. In addition, feedback from users may be used to identify related and/or substitute URLs. For example, a mechanism may be provided for allowing users of the error processing client 30 to explicitly indicate that a given web page or site has moved to a new location. The methods described in U.S. Pat. No. 6,138,113 may also be used.
As depicted in FIG. 1, some of the web pages retrieved and analyzed by the web crawler/analyzer 52 may be stored in a web page cache 46. Web pages may be selected to include in the cache 46 based on the frequencies with which the associated URLs appear within the clickstream histories of users, or based on any other appropriate criteria. As mentioned above, the web page cache 46 may be used to return a cached version of a web page that is currently undisplayable. Further, cached versions of web pages may optionally be used to identify web pages that have been moved. For instance, the web crawler/analyzer 52 could compare the web page retrieved from a newly discovered URL with a cached version of a page retrieved from a currently non-responsive URL to evaluate whether the new URL replaces (is a substitute for) the non-responsive URL. Selected web pages may also be stored persistently within an archive (not shown) that is accessible to the error processing server 30.
As will be recognized, the present invention may be implemented using only a subset of those components and functions described above. For example, the alternate objects may be provided exclusively from the web page cache 46 or an archive, or based exclusively on data stored in the URL-to-URL mapping table 50. Further, components and methods other than those described herein may be used to identify and/or generate the alternate web pages.
FIG. 2 illustrates a typical sequence of interactions that may occur in the preferred embodiment when a page request results in a page load error. The page request (event 1) may be a request for a web page, or possibly another type of object, at any target URL. The error processing client 30 may detect the error (event 2) by monitoring the content of server responses received by the browser (e.g., to look for predefined error messages, and to look for predefined strings such as “404,” “error,” “page not found,” and “unable to display” in returned web pages). The error processing client may also treat a web server's failure to respond within a fixed or user-configurable timeout period as a page load error. Further, the error processing client may monitor error messages generated by the web browser 34 to detect page load errors.
Upon detecting a page load error, the error processing client 30 causes the web browser 34 to send a request to the error processing server 40 for an alternate object for the target URL (event 3). This request may, in some embodiments, be sent to the error processing server 40 before the error processing client actually detects the error, so that the alternate object may be displayed promptly upon actual detection of the error. The request for the alternate page may optionally specify the type of error detected (e.g., 404, timeout, etc.), in which case the error processing server may take the error type into consideration in selecting a type of alternate page to present. In response to the request, the error processing server 40 selects an alternate object to present to the user (event 4), and in some embodiments, generates the selected alternate object. One example of a method that may be used to perform this task is shown in FIG. 3, discussed below.
The error processing server 40 then returns the alternate object, or the URL of the alternate object, to the web browser 34 (event 5). The web browser 34 may display the alternate object in a main browsing window, or in a window or other area that is separate from the main window (e.g., a separate pop-up window).
If the alternate object is retrieved as the result of a timeout error, and the actual page requested by the user thereafter begins to arrive, the display of the alternate object may be automatically replaced with a display of the requested page. To increase the likelihood that the requested page will be displayed in this manner, a background task of the error processing client 30 may periodically attempt to retrieve the requested page while the user views the alternate object.
FIG. 3 illustrates one example of a method that may be used by the error processing server application 42 to identify, and in some cases generate, an alternate page or other object in the system of FIG. 1. Initially, the URL-to-URL mapping table and the cache 46 are checked to see if any entries exist for the target URL (block 60). If a substitute URL is found in the table (block 62), the substitute URL, or an object retrieved by the error processing server 40 from the substitute URL, is returned to the web browser (block 64). If no substitute URL is found but a cached version of the requested page exists (block 66), the cached version of the requested page is returned (block 68). If a cached version of the page is not found in block 66, but one or more related URLs are listed in the mapping table (block 70), the related URL(s) may be returned, optionally as part of a dynamically-generated web page that includes a separate link for each such related URL (block 72).
If no related URLs are listed for the target URL, the error processing server 40 may compare the target URL to URLs contained in the user's clickstream history (block 74) to determine whether any close matches exists. If a closely matching URL is found (e.g., one that differs from the target URL by only a single character), the browser 34 may be redirected to this closely matching URL, or otherwise caused to display an object retrieved from that URL (block 76). Finally, if no alternate object can be identified for the target URL, the error processing server 40 may return a null response (block 78), or possibly a default error page.
Once the alternate object or its URL is communicated to the browser 34, the browser displays the alternate object to the user. FIG. 4 illustrates the general form of an alternate object that may be displayed to the user. As mentioned above, an appropriate annotation 90 may be added to the alternate object, or otherwise displayed within or outside the browser 34, to indicate the type or source of the alternate object. A menu may also be displayed on the alternate object within or outside of the browser 34 to allow the user to select a different alternate object to view.
Rather than selecting an appropriate type of alternate object to present to the user as in FIG. 3, an intermediate page (which is itself an alternate page) may be presented with links to alternate objects of various types. For example, an intermediate page can be presented with a link to each substitute web page, a link to a cached version of the requested page, and/or a link to each related page. FIG. 5 illustrates the general form of an intermediate page that is displayed in one embodiment.
The method shown in FIG. 3 embodies a particular hierarchy of types of alternate objects to be displayed. For example, a cached version of the requested page is displayed only if no substitute URL is found; and related URLs are returned only if no substitute or cached version of the requested page is found. Each user of the system may be permitted to specify or modify this hierarchy to specify how alternate objects are to be selected for display. For instance, a user may be permitted to filter out certain types of alternate objects, or to specify that a particular type of alternate object should be displayed if available.
The foregoing methods and components may also be used to handle errors that occur when display objects other than web pages are requested. For example, when a browser 34 attempts to retrieve an image file from a particular URL, an alternate image file may be identified by the error processing server, and displayed within the browser, using the same techniques as described above. As another example, when a user requests a PDF document that is not found, the error processing server 40 may return an HTML version of the requested document or a link thereto.
Further, the division of functionality between the error processing client and server components may be varied from that shown and described above. For instance, some or all of the entries in the URL-to-URL mapping table 50 (FIG. 1) can be periodically transmitted to and cached by each client computer 32. In such embodiments, the error processing client 30 may look up an alternate URL from its locally-stored table, and retrieve an alternate object from that URL, without communicating with the error processing server 40.
Although this invention has been described in terms of certain preferred embodiments and applications, other embodiments and applications that are apparent to those of ordinary skill in the art, including embodiments which do not provide all of the features and advantages set forth herein, are also within the scope of this invention. Accordingly, the scope of the present invention is defined only by the appended claims.

Claims (44)

1. A system for handling page request errors, comprising:
an error processing server; and
a client component that runs on a user computing device in association with or as part of a browser program and communicates with the error processing server over a computer network;
wherein the client component is responsive to detection of the unavailability of a target web page requested by the browser program by sending a request to the error processing server, and the error processing server is responsive to the request by using an address of the target web page to select an alternate object to be displayed by the browser program in place of the requested target web page, wherein the error processing server is capable of selecting the alternate object according to a hierarchy of alternate object types such that selection priority is given to a first type of alternate object over at least a second type of alternate object, said hierarchy specified by a user of the user computing device, and specifying selection priorities for at least the following types of alternate objects: (a) a substitute object which is an object previously determined to have visible content that is substantially identical to visible content of the target web pages (b) a cached version of the target web page, and (c) a non-cached web page that is related to the target web page but is not a substitute object;
whereby the system enables an alternate object that is associated with the requested web page to be presented to the user when the requested web page is unavailable.
2. The system of claim 1, wherein the error processing server is capable of checking a plurality of different sources to identify an alternate object, each source corresponding to a different type of alternate object.
3. The system of claim 1, wherein the error processing server further causes the browser program to display a message indicating the type of the alternate object selected for display.
4. The system of claim 1, wherein the error processing server accesses a table that maps specific URLs to URLs of alternate objects, and uses the table to select at least some of the alternate objects to present to users.
5. The system of claim 4, wherein the table maps URLs to substitute URLs.
6. The system of claim 4, wherein the table maps URLs to related URLs.
7. The system of claim 4, further comprising an analysis component that analyzes clickstreams of users and associated web pages to generate URL-to-URL mappings included within the table.
8. The system of claim 1, wherein the error processing server compares a target URL supplied by a user to URLs contained within a clickstream of the user to evaluate whether the user mis-entered the target URL.
9. The system of claim 1, wherein the error processing server additionally generates at least some of the selected alternate objects.
10. The system of claim 1, wherein the client component requests an alternate object from the error processing server in response to detecting at least an HTTP 404 error.
11. The system of claim 1, wherein the client component requests an alternate object from the error processing server in response to detecting at least a timeout error.
12. The system of claim 1, wherein the client component is a browser plug-in.
13. The system of claim 1, wherein the hierarchy additionally specifies a selection priority for the following type of alternate object: (d) an object obtained from a similarly but differently spelled URL in a clickstream history associated with the browser program.
14. The system of claim 1, wherein the first type of alternate object is a substitute object, and the second type of object is a cached version of the target web page.
15. The system of claim 1, wherein the first type of alternate object is a substitute object and the second type of alternate object is a related web page that is not a substitute object.
16. The system of claim 1, wherein the first type of alternate object is a cached version of the target web page, and the second type of alternate object is a non-cached web page determined to be related to the target web page.
17. The system of claim 1, wherein the error processing server is configured to check for the first type of alternate object, and to return the second type of alternate object only if the first type of alternate object is not available.
18. The system of claim 1, wherein the system enables each user to specify the hierarchy to control how alternate objects are selected for display.
19. The system of claim 1, wherein the system enables an end user to specify that a particular type of alternate object should not be displayed.
20. The system of claim 1, wherein the address of the target web page is a URL.
21. The system of claim 1, wherein the client component is configured to generate HTTP requests.
22. A computer-implemented method of handling page load errors, comprising:
detecting, at a user computing device that runs a web browser, that a browser request for a target web page has resulted in an error of a defined type;
transmitting an address of the target web page from the user computing device to an error processing server;
at the error processing server, using the address of the target web page to select an alternate web page to display within the browser, wherein the error processing server selects the alternate web page using a hierarchy that specifies a preference for a first type of alternate web page over at least a second type of alternate web page, said hierarchy specified by a user of the user computing device, and reflecting relative preferences of the user for at least the following types of alternate web pages: (a) a substitute web page which is a web page determined to have visible content that is substantially identical to visible content of the target web page, (b) a cached version of the target web page, and (c) a non-cached web page that is related to the target web page but is not a substitute web page; and
causing the web browser to display the alternate web page in place of the requested target web page.
23. The method of claim 22, wherein the hierarchy additionally specifies a relative preference for the following type of alternate web page: (d) a web page obtained from a similarly but differently spelled URL in a clickstream history associated with the user computing device.
24. The method of claim 22, wherein the method comprises the error processing server selecting a secondary type of alternate web page to display within the browser in response to detecting that a primary type of alternate web page is not available.
25. The method of claim 22, further comprising displaying a message within the web browser indicating which of said types of alternate web pages was selected for display.
26. The method of claim 22, wherein the error of a defined type is an HTTP 404 error.
27. The method of claim 22, wherein the method comprises the error processing server selecting a cached version of the target web page to display in response to determining that no substitute web page is known for the target web page.
28. The method of claim 22, wherein the first type of alternate web page is a web page retrieved from a URL that is deemed to be a replacement URL for the target web page.
29. The method of claim 22, wherein the step of using the address of the target web page to select an alternate web page comprises accessing a URL-to-URL mapping table that separately maps each of a plurality of target URLs to a URL of an alternate web page.
30. The method of claim 22, wherein the step of using the address of the target web page to select an alternate web page comprises comparing a target URL supplied by a user to URLs contained in a clickstream history of the user to evaluate whether the user mis-entered the target URL.
31. The method of claim 22, wherein the alternate web page is generated dynamically by the error processing server.
32. The method of claim 31, wherein the dynamically-generated web page includes links to pages that are at least related to the target web page.
33. The method of claim 22, wherein the hierarchy specifies a type of alternate object that is not to be selected for display by the error processing server.
34. A method of handling errors associated with browser requests for displayable objects, the method comprising:
detecting, at a user computing device that runs a web browser, that a browser request for a target object at a target URL has resulted in an error of a defined type;
looking up an alternate URL based at least in-part on the target URL, said alternate URL specifying a location of an alternate object, said alternate object not being an archived version of the target object, wherein looking up the alternate URL comprises using a hierarchy of alternate object types to select the alternate URL, said hierarchy of alternate object types specifying a preference for a first alternate object type over at least a second alternate object type, wherein the hierarchy is specified by a user of the user computing device, and reflects relative preferences of the user for at least three of the following alternate object types: (a) a substitute object which is an object determined to have visible content that is substantially identical to visible content of the target object, (b) a cached version of the target object, (c) a non-cached object that is related to the target object but is not a substitute object, (d) an object obtained from a similarly spelled URL present in a clickstream history associated with the user computing device; and
responding to the error by doing at least one of the following (1) retrieving the alternate object from the alternate URL and displaying the alternate object within the web browser, (2) presenting, on the user computing device, a link to the alternate object to allow a user to select the alternate object for display.
35. The method of claim 34, wherein the hierarchy reflects relative preferences of the user for all four of said alternate object types, (a), (b, (c) and (d).
36. The method of claim 34, wherein the method comprises retrieving the alternate object, and displaying the alternate object within the web browser together with a message indicating which of said types of alternate objects is displayed.
37. The method of claim 34, wherein the error of a defined type is an HTTP 404 error.
38. The method of claim 34, wherein the error of a defined type is a timeout error in which a host of the target object fails to respond to the browser request within a selected time period.
39. The method of claim 34, wherein the method comprises determining whether a substitute URL is known for the target URL, and when no substitute URL is known, using a cached version of the target object as the alternate object.
40. The method of claim 34, wherein the method comprises giving preference to a cached version of the target object over a web page that is related to, but not a cached version of, the target object.
41. The method of claim 34, wherein the step of looking up an alternate URL comprises accessing a URL-to-URL mapping table that separately maps each of a plurality of URLs to a URL of a corresponding alternate object.
42. The method of claim 41, wherein the step of accessing the URL-to-URL mapping table comprises accessing a cached version of the table stored on the user computing device.
43. The method of claim 34, wherein the step of looking up an alternate URL is performed by a remote error processing server in response to a message received from the user computing device.
44. The method of claim 34, further comprising receiving an indication of said hierarchy from the user.
US10/634,633 2003-08-05 2003-08-05 Error processing methods for providing responsive content to a user when a page load error occurs Expired - Fee Related US7325045B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/634,633 US7325045B1 (en) 2003-08-05 2003-08-05 Error processing methods for providing responsive content to a user when a page load error occurs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/634,633 US7325045B1 (en) 2003-08-05 2003-08-05 Error processing methods for providing responsive content to a user when a page load error occurs

Publications (1)

Publication Number Publication Date
US7325045B1 true US7325045B1 (en) 2008-01-29

Family

ID=38974017

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/634,633 Expired - Fee Related US7325045B1 (en) 2003-08-05 2003-08-05 Error processing methods for providing responsive content to a user when a page load error occurs

Country Status (1)

Country Link
US (1) US7325045B1 (en)

Cited By (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050028010A1 (en) * 2003-07-29 2005-02-03 International Business Machines Corporation System and method for addressing denial of service virus attacks
US20050240626A1 (en) * 2004-04-26 2005-10-27 Samsung Electronics Co., Ltd. Method and apparatus for fixing up LastURL, and computer readable recording medium storing program for performing the method
US20060064470A1 (en) * 2004-09-23 2006-03-23 Sargent Antony J Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
US20060224930A1 (en) * 2005-03-31 2006-10-05 Ibm Corporation Systems and methods for event detection
US20070033264A1 (en) * 2004-07-22 2007-02-08 Edge Simon R User Interface
US20070162260A1 (en) * 2006-01-11 2007-07-12 Nordstrom Paul G System and method for service availability management
US20070220168A1 (en) * 2006-03-15 2007-09-20 Microsoft Corporation Efficient encoding of alternative graphic sets
US20080263193A1 (en) * 2007-04-17 2008-10-23 Chalemin Glen E System and Method for Automatically Providing a Web Resource for a Broken Web Link
US7478330B1 (en) * 2008-04-30 2009-01-13 International Business Machines Corporation Systems and methods involving improved web browsing
US20090063406A1 (en) * 2007-08-27 2009-03-05 Amit Golander Method, Service and Search System for Network Resource Address Repair
US20090089629A1 (en) * 2007-09-27 2009-04-02 Microsoft Corporation Capturing diagnostics in web browser applications
US20090158099A1 (en) * 2007-12-14 2009-06-18 Sap Ag Method and apparatus for runtime error handling
US20100083231A1 (en) * 2008-09-30 2010-04-01 Yahoo! Inc. System And Method For Safe Code Loading
US7694012B1 (en) * 2006-02-28 2010-04-06 Galileo International L.L.C. System and method for routing data
US20100106571A1 (en) * 2008-10-23 2010-04-29 Microsoft Corporation Smart, search-enabled web error pages
WO2010072884A1 (en) * 2008-12-22 2010-07-01 Nokia Corporation Method, apparatus and computer program product for providing unrestricted content on a user terminal
WO2011067999A1 (en) 2009-12-02 2011-06-09 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
US7979439B1 (en) 2006-03-14 2011-07-12 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US20110179365A1 (en) * 2008-09-29 2011-07-21 Teruya Ikegami Gui evaluation system, gui evaluation method, and gui evaluation program
US20110239059A1 (en) * 2010-03-23 2011-09-29 Konica Minolta Business Technologies, Inc. Display screen control device, display screen control method, and computer readable medium
CN102214223A (en) * 2011-06-15 2011-10-12 奇智软件(北京)有限公司 Method and system for browser access control
US20120089712A1 (en) * 2010-10-12 2012-04-12 Apple Inc. Systems and methods for providing network resource address management
CN102456063A (en) * 2011-03-02 2012-05-16 奇智软件(北京)有限公司 Webpage access error correction method and system
US8307073B1 (en) 2010-06-24 2012-11-06 Amazon Technologies, Inc. URL rescue by correction of encoding errors
US20130013725A1 (en) * 2002-12-13 2013-01-10 Scheevel Mark R System and method for managing page variations in a page delivery cache
US20130024622A1 (en) * 2002-12-13 2013-01-24 Martin John H Event-driven regeneration of pages for web-based applications
US8458227B1 (en) 2010-06-24 2013-06-04 Amazon Technologies, Inc. URL rescue by identifying information related to an item referenced in an invalid URL
CN103136296A (en) * 2011-12-05 2013-06-05 英顺源(上海)科技有限公司 System judging similar service according to service catalog and target service and method thereof
US8504673B2 (en) 2011-03-31 2013-08-06 Verisign, Inc. Traffic like NXDomains
US8601112B1 (en) 2006-03-14 2013-12-03 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US20140032526A1 (en) * 2008-09-18 2014-01-30 Adobe Systems Incorporated Systems and methods for relinking data items
US8677188B2 (en) 2007-06-20 2014-03-18 Microsoft Corporation Web page error reporting
US8874970B2 (en) 2004-03-31 2014-10-28 Microsoft Corporation System and method of preventing a web browser plug-in module from generating a failure
US20140331119A1 (en) * 2013-05-06 2014-11-06 Mcafee, Inc. Indicating website reputations during user interactions
US8898137B1 (en) 2010-06-24 2014-11-25 Amazon Technologies, Inc. URL rescue by execution of search using information extracted from invalid URL
US8914439B2 (en) 2010-04-07 2014-12-16 International Business Machines Corporation Fallback ordering for on-line environment
US20150026571A1 (en) * 2013-07-19 2015-01-22 Samsung Electronics Co., Ltd. Display apparatus and method for providing a user interface
US20150032842A1 (en) * 2013-07-26 2015-01-29 Norman Cheng Web page provision method and system associated with a two-dimensional barcode
CN104504071A (en) * 2014-12-22 2015-04-08 北京奇虎科技有限公司 SE (search engine)-based web cache providing method and web search client and server
US9037926B2 (en) 2012-06-07 2015-05-19 International Business Machines Corporation Background buffering of content updates
US9037698B1 (en) 2006-03-14 2015-05-19 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US9043351B1 (en) * 2011-03-08 2015-05-26 A9.Com, Inc. Determining search query specificity
US20150154163A1 (en) * 2013-12-02 2015-06-04 Airbnb, Inc. Third party assets merging for embedment into web pages
CN104933061A (en) * 2014-03-19 2015-09-23 腾讯科技(深圳)有限公司 String detection method and apparatus and electronic device
US20160191522A1 (en) * 2013-08-02 2016-06-30 Uc Mobile Co., Ltd. Method and apparatus for accessing website
US9384345B2 (en) 2005-05-03 2016-07-05 Mcafee, Inc. Providing alternative web content based on website reputation assessment
CN105760538A (en) * 2016-03-14 2016-07-13 广州神马移动信息科技有限公司 URL (Uniform Resource Locator) input method based on browser address bar and browser
US20160364495A1 (en) * 2014-06-11 2016-12-15 Tencent Technology (Shenzhen) Company Limited Url error-correcting method, server, terminal and system
US20170053037A1 (en) * 2015-08-18 2017-02-23 Lenovo (Singapore) Pte. Ltd. Validation of internet address input to a device
EP3187997A1 (en) * 2015-12-28 2017-07-05 Canon Kabushiki Kaisha Information processing apparatus, information system, information processing method, and a program
US20190213271A1 (en) * 2018-01-09 2019-07-11 Unisys Corporation Method and system for data exchange critical event notification
CN111176765A (en) * 2019-12-13 2020-05-19 深圳市麦谷科技有限公司 Display method and system based on view container assembly and packaging method
WO2020206907A1 (en) * 2019-04-12 2020-10-15 平安科技(深圳)有限公司 Application program standby page switching method and apparatus, computer device and storage medium
US11074310B2 (en) * 2018-05-14 2021-07-27 International Business Machines Corporation Content-based management of links to resources
US11074122B2 (en) * 2019-08-08 2021-07-27 International Business Machines Corporation Graceful degradation of user interface components in response to errors
US11288336B2 (en) * 2018-04-18 2022-03-29 Google Llc Systems and methods for providing content items in situations involving suboptimal network conditions
CN115037801A (en) * 2022-03-14 2022-09-09 阿里巴巴(中国)有限公司 Priority adjustment method, electronic device, and storage medium
WO2024060106A1 (en) * 2022-09-22 2024-03-28 Citrix Systems, Inc. Providing web pages with generated content in response to uniform resource locator based penetration attacks

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892919A (en) * 1997-06-23 1999-04-06 Sun Microsystems, Inc. Spell checking universal resource locator (URL) by comparing the URL against a cache containing entries relating incorrect URLs submitted by users to corresponding correct URLs
US5941944A (en) * 1997-03-03 1999-08-24 Microsoft Corporation Method for providing a substitute for a requested inaccessible object by identifying substantially similar objects using weights corresponding to object features
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6154738A (en) * 1998-03-27 2000-11-28 Call; Charles Gainor Methods and apparatus for disseminating product information via the internet using universal product codes
US6202087B1 (en) * 1999-03-22 2001-03-13 Ofer Gadish Replacement of error messages with non-error messages
US6282548B1 (en) 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US6332158B1 (en) * 1998-12-03 2001-12-18 Chris Risley Domain name system lookup allowing intelligent correction of searches and presentation of auxiliary information
US20020056053A1 (en) 2000-10-26 2002-05-09 Ben Vine System and method for handling web failures
US20020059396A1 (en) * 2000-09-28 2002-05-16 Holzer Dipl.-Ing. Rene Apparatus and a process for the retrieval of data in the case of a faulty request on a server in the internet
US20020083130A1 (en) * 2000-12-11 2002-06-27 Hitachi, Ltd. Method and system for referring to data over network
US6549941B1 (en) 1999-11-22 2003-04-15 Alexa Internet Software system and methods for resubmitting form data to related web sites
US20030084034A1 (en) * 2001-11-01 2003-05-01 Richard Fannin Web-based search system
US6594697B1 (en) * 1999-05-20 2003-07-15 Microsoft Corporation Client system having error page analysis and replacement capabilities
US6687734B1 (en) 2000-03-21 2004-02-03 America Online, Incorporated System and method for determining if one web site has the same information as another web site
US20040107296A1 (en) * 2002-12-02 2004-06-03 International Business Machines Corporation System and method for accessing content of a web page
US6782430B1 (en) * 1998-06-05 2004-08-24 International Business Machines Corporation Invalid link recovery
US6895430B1 (en) * 1999-10-01 2005-05-17 Eric Schneider Method and apparatus for integrating resolution services, registration services, and search services
US6987987B1 (en) * 2002-07-03 2006-01-17 Sprint Spectrum L.P. Method and system for providing advanced notice of cost to access web content
US7058633B1 (en) * 2002-09-09 2006-06-06 Cisco Technology, Inc. System and method for generalized URL-rewriting
US7162698B2 (en) * 2001-07-17 2007-01-09 Mcafee, Inc. Sliding window packet management systems

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5941944A (en) * 1997-03-03 1999-08-24 Microsoft Corporation Method for providing a substitute for a requested inaccessible object by identifying substantially similar objects using weights corresponding to object features
US6282548B1 (en) 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US5892919A (en) * 1997-06-23 1999-04-06 Sun Microsystems, Inc. Spell checking universal resource locator (URL) by comparing the URL against a cache containing entries relating incorrect URLs submitted by users to corresponding correct URLs
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6154738A (en) * 1998-03-27 2000-11-28 Call; Charles Gainor Methods and apparatus for disseminating product information via the internet using universal product codes
US6782430B1 (en) * 1998-06-05 2004-08-24 International Business Machines Corporation Invalid link recovery
US6332158B1 (en) * 1998-12-03 2001-12-18 Chris Risley Domain name system lookup allowing intelligent correction of searches and presentation of auxiliary information
US6202087B1 (en) * 1999-03-22 2001-03-13 Ofer Gadish Replacement of error messages with non-error messages
US6594697B1 (en) * 1999-05-20 2003-07-15 Microsoft Corporation Client system having error page analysis and replacement capabilities
US6895430B1 (en) * 1999-10-01 2005-05-17 Eric Schneider Method and apparatus for integrating resolution services, registration services, and search services
US6549941B1 (en) 1999-11-22 2003-04-15 Alexa Internet Software system and methods for resubmitting form data to related web sites
US6687734B1 (en) 2000-03-21 2004-02-03 America Online, Incorporated System and method for determining if one web site has the same information as another web site
US20020059396A1 (en) * 2000-09-28 2002-05-16 Holzer Dipl.-Ing. Rene Apparatus and a process for the retrieval of data in the case of a faulty request on a server in the internet
US20020056053A1 (en) 2000-10-26 2002-05-09 Ben Vine System and method for handling web failures
US20020083130A1 (en) * 2000-12-11 2002-06-27 Hitachi, Ltd. Method and system for referring to data over network
US7162698B2 (en) * 2001-07-17 2007-01-09 Mcafee, Inc. Sliding window packet management systems
US20030084034A1 (en) * 2001-11-01 2003-05-01 Richard Fannin Web-based search system
US6987987B1 (en) * 2002-07-03 2006-01-17 Sprint Spectrum L.P. Method and system for providing advanced notice of cost to access web content
US7058633B1 (en) * 2002-09-09 2006-06-06 Cisco Technology, Inc. System and method for generalized URL-rewriting
US20040107296A1 (en) * 2002-12-02 2004-06-03 International Business Machines Corporation System and method for accessing content of a web page

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
3-page Press Release titled "Alexa Internet Integrates Related Links and Archive of the Web into Internet Explorer 5 Release," dated Mar. 18, 1999.
Plotnikoff, D., "Navigation tools help the Web traveler," 3-page newsletter from San Jose Mercury News, dated Feb. 5, 2000.
Wexelblat, A., and Maes, P., "Footprints: History-Rich Tools for Information Foraging," Proceedings of ACM CHI'99 Conference, ACM Press, May 15-20, 1999.
Wingfield, N., "Internet Companies See Value In Misaddressed Web Traffic," The Wall Street Journal, Online as of Friday, Sep. 5, 2003, pp. 1-4.

Cited By (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9380022B2 (en) 2002-12-13 2016-06-28 Open Text S.A. System and method for managing content variations in a content deliver cache
US9160709B2 (en) 2002-12-13 2015-10-13 Open Text S.A. System and method for managing page variations in a page delivery cache
US20130013725A1 (en) * 2002-12-13 2013-01-10 Scheevel Mark R System and method for managing page variations in a page delivery cache
US9703885B2 (en) 2002-12-13 2017-07-11 Open Text Sa Ulc Systems and methods for managing content variations in content delivery cache
US20130024622A1 (en) * 2002-12-13 2013-01-24 Martin John H Event-driven regeneration of pages for web-based applications
US9081807B2 (en) 2002-12-13 2015-07-14 Open Text S.A. Event-driven invalidation of pages for web-based applications
US8832387B2 (en) * 2002-12-13 2014-09-09 Open Text S.A. Event-driven regeneration of pages for web-based applications
US8850138B2 (en) * 2002-12-13 2014-09-30 Open Text, S.A. System and method for managing page variations in a page delivery cache
US20050028010A1 (en) * 2003-07-29 2005-02-03 International Business Machines Corporation System and method for addressing denial of service virus attacks
US8874970B2 (en) 2004-03-31 2014-10-28 Microsoft Corporation System and method of preventing a web browser plug-in module from generating a failure
US20050240626A1 (en) * 2004-04-26 2005-10-27 Samsung Electronics Co., Ltd. Method and apparatus for fixing up LastURL, and computer readable recording medium storing program for performing the method
US8751601B2 (en) * 2004-07-22 2014-06-10 Barefruit Limited User interface that provides relevant alternative links
US20070033264A1 (en) * 2004-07-22 2007-02-08 Edge Simon R User Interface
US20060064470A1 (en) * 2004-09-23 2006-03-23 Sargent Antony J Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
US20080276131A1 (en) * 2005-03-31 2008-11-06 International Business Machines Corporation Systems and methods for event detection
US20060224930A1 (en) * 2005-03-31 2006-10-05 Ibm Corporation Systems and methods for event detection
US7475135B2 (en) * 2005-03-31 2009-01-06 International Business Machines Corporation Systems and methods for event detection
US9384345B2 (en) 2005-05-03 2016-07-05 Mcafee, Inc. Providing alternative web content based on website reputation assessment
US20110161744A1 (en) * 2006-01-11 2011-06-30 Nordstrom Paul G System and method for service availability management
US8296609B2 (en) 2006-01-11 2012-10-23 Amazon Technologies, Inc. System and method for service availability management
US7904759B2 (en) 2006-01-11 2011-03-08 Amazon Technologies, Inc. System and method for service availability management
US20070162260A1 (en) * 2006-01-11 2007-07-12 Nordstrom Paul G System and method for service availability management
US7694012B1 (en) * 2006-02-28 2010-04-06 Galileo International L.L.C. System and method for routing data
US9037698B1 (en) 2006-03-14 2015-05-19 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US7979439B1 (en) 2006-03-14 2011-07-12 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US8601112B1 (en) 2006-03-14 2013-12-03 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US9990385B2 (en) 2006-03-14 2018-06-05 Amazon Technologies, Inc. Method and system for collecting and analyzing time-series data
US20070220168A1 (en) * 2006-03-15 2007-09-20 Microsoft Corporation Efficient encoding of alternative graphic sets
US8244051B2 (en) 2006-03-15 2012-08-14 Microsoft Corporation Efficient encoding of alternative graphic sets
US20100278442A1 (en) * 2006-03-15 2010-11-04 Microsoft Corporation Efficient encoding of alternative graphic sets
US8351716B2 (en) * 2006-03-15 2013-01-08 Microsoft Corporation Efficient encoding of alternative graphic sets
US20080263193A1 (en) * 2007-04-17 2008-10-23 Chalemin Glen E System and Method for Automatically Providing a Web Resource for a Broken Web Link
US9384119B2 (en) 2007-06-20 2016-07-05 Microsoft Technology Licensing, Llc Web page error reporting
US8677188B2 (en) 2007-06-20 2014-03-18 Microsoft Corporation Web page error reporting
US20090063406A1 (en) * 2007-08-27 2009-03-05 Amit Golander Method, Service and Search System for Network Resource Address Repair
US20090089629A1 (en) * 2007-09-27 2009-04-02 Microsoft Corporation Capturing diagnostics in web browser applications
US8271836B2 (en) * 2007-09-27 2012-09-18 Microsoft Corporation Capturing diagnostics in web browser applications
US7861120B2 (en) * 2007-12-14 2010-12-28 Sap Ag Method and apparatus for runtime error handling
US20090158099A1 (en) * 2007-12-14 2009-06-18 Sap Ag Method and apparatus for runtime error handling
US7478330B1 (en) * 2008-04-30 2009-01-13 International Business Machines Corporation Systems and methods involving improved web browsing
US9965479B2 (en) * 2008-09-18 2018-05-08 Adobe Systems Incorporated Systems and methods for relinking data items
US20140032526A1 (en) * 2008-09-18 2014-01-30 Adobe Systems Incorporated Systems and methods for relinking data items
US8826185B2 (en) * 2008-09-29 2014-09-02 Nec Corporation GUI evaluation system, GUI evaluation method, and GUI evaluation program
US20110179365A1 (en) * 2008-09-29 2011-07-21 Teruya Ikegami Gui evaluation system, gui evaluation method, and gui evaluation program
US20100083231A1 (en) * 2008-09-30 2010-04-01 Yahoo! Inc. System And Method For Safe Code Loading
US8825740B2 (en) * 2008-10-23 2014-09-02 Microsoft Corporation Smart, search-enabled web error pages
US20100106571A1 (en) * 2008-10-23 2010-04-29 Microsoft Corporation Smart, search-enabled web error pages
US8001213B2 (en) 2008-12-22 2011-08-16 Nokia Corporation Method, apparatus and computer program product for providing unrestricted content on a user terminal
WO2010072884A1 (en) * 2008-12-22 2010-07-01 Nokia Corporation Method, apparatus and computer program product for providing unrestricted content on a user terminal
US20110235103A1 (en) * 2009-12-02 2011-09-29 Canon Kabushiki Kaisha Image processing apparatus and control method Thereof
RU2515608C2 (en) * 2009-12-02 2014-05-20 Кэнон Кабусики Кайся Image processing device and control method therefor
EP2507985A4 (en) * 2009-12-02 2013-04-10 Canon Kk Image processing apparatus and control method thereof
CN102630380B (en) * 2009-12-02 2014-12-31 佳能株式会社 Image processing apparatus and control method thereof
CN102630380A (en) * 2009-12-02 2012-08-08 佳能株式会社 Image processing apparatus and control method thereof
JP2011119939A (en) * 2009-12-02 2011-06-16 Canon Inc Image processing apparatus, and control method thereof
WO2011067999A1 (en) 2009-12-02 2011-06-09 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
EP2507985A1 (en) * 2009-12-02 2012-10-10 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
US8947699B2 (en) * 2009-12-02 2015-02-03 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
US20110239059A1 (en) * 2010-03-23 2011-09-29 Konica Minolta Business Technologies, Inc. Display screen control device, display screen control method, and computer readable medium
US8826085B2 (en) * 2010-03-23 2014-09-02 Konica Minolta Business Technologies, Inc. Display screen control device with error alert, display screen control method, and computer readable medium
US8914439B2 (en) 2010-04-07 2014-12-16 International Business Machines Corporation Fallback ordering for on-line environment
US9584580B2 (en) 2010-06-24 2017-02-28 Amazon Technologies, Inc. URL rescue by identifying information related to an item referenced in an invalid URL
US9760632B2 (en) 2010-06-24 2017-09-12 Amazon Technologies, Inc. URL rescue by execution of search using information extracted from invalid URL
US8898137B1 (en) 2010-06-24 2014-11-25 Amazon Technologies, Inc. URL rescue by execution of search using information extracted from invalid URL
US8458227B1 (en) 2010-06-24 2013-06-04 Amazon Technologies, Inc. URL rescue by identifying information related to an item referenced in an invalid URL
US8438279B2 (en) 2010-06-24 2013-05-07 Amazon Technologies, Inc. Identifying content that is responsive to a request for an invalid URL
US8307073B1 (en) 2010-06-24 2012-11-06 Amazon Technologies, Inc. URL rescue by correction of encoding errors
US8631156B2 (en) * 2010-10-12 2014-01-14 Apple Inc. Systems and methods for providing network resource address management
US20120089712A1 (en) * 2010-10-12 2012-04-12 Apple Inc. Systems and methods for providing network resource address management
CN102456063A (en) * 2011-03-02 2012-05-16 奇智软件(北京)有限公司 Webpage access error correction method and system
US9043351B1 (en) * 2011-03-08 2015-05-26 A9.Com, Inc. Determining search query specificity
US8504673B2 (en) 2011-03-31 2013-08-06 Verisign, Inc. Traffic like NXDomains
CN102214223A (en) * 2011-06-15 2011-10-12 奇智软件(北京)有限公司 Method and system for browser access control
CN103136296A (en) * 2011-12-05 2013-06-05 英顺源(上海)科技有限公司 System judging similar service according to service catalog and target service and method thereof
CN103136296B (en) * 2011-12-05 2017-10-20 英顺源(上海)科技有限公司 The system and method for judging approximately to service according to service catalogue and destination service
US9037926B2 (en) 2012-06-07 2015-05-19 International Business Machines Corporation Background buffering of content updates
US20140331119A1 (en) * 2013-05-06 2014-11-06 Mcafee, Inc. Indicating website reputations during user interactions
US20150026571A1 (en) * 2013-07-19 2015-01-22 Samsung Electronics Co., Ltd. Display apparatus and method for providing a user interface
US20150032842A1 (en) * 2013-07-26 2015-01-29 Norman Cheng Web page provision method and system associated with a two-dimensional barcode
US11128621B2 (en) 2013-08-02 2021-09-21 Alibaba Group Holdings Limited Method and apparatus for accessing website
US10778680B2 (en) * 2013-08-02 2020-09-15 Alibaba Group Holding Limited Method and apparatus for accessing website
US20160191522A1 (en) * 2013-08-02 2016-06-30 Uc Mobile Co., Ltd. Method and apparatus for accessing website
US20150154163A1 (en) * 2013-12-02 2015-06-04 Airbnb, Inc. Third party assets merging for embedment into web pages
US11256858B2 (en) * 2013-12-02 2022-02-22 Airbnb, Inc. Third party assets merging for embedment into web pages
CN104933061A (en) * 2014-03-19 2015-09-23 腾讯科技(深圳)有限公司 String detection method and apparatus and electronic device
US10621259B2 (en) * 2014-06-11 2020-04-14 Tencent Technology (Shenzhen) Company Limited URL error-correcting method, server, terminal and system
US20160364495A1 (en) * 2014-06-11 2016-12-15 Tencent Technology (Shenzhen) Company Limited Url error-correcting method, server, terminal and system
CN104504071A (en) * 2014-12-22 2015-04-08 北京奇虎科技有限公司 SE (search engine)-based web cache providing method and web search client and server
US20170053037A1 (en) * 2015-08-18 2017-02-23 Lenovo (Singapore) Pte. Ltd. Validation of internet address input to a device
EP3187997A1 (en) * 2015-12-28 2017-07-05 Canon Kabushiki Kaisha Information processing apparatus, information system, information processing method, and a program
US9917964B2 (en) 2015-12-28 2018-03-13 Canon Kabushiki Kaisha Information processing apparatus, information system, information processing method, and storage medium
CN105760538A (en) * 2016-03-14 2016-07-13 广州神马移动信息科技有限公司 URL (Uniform Resource Locator) input method based on browser address bar and browser
US20190213271A1 (en) * 2018-01-09 2019-07-11 Unisys Corporation Method and system for data exchange critical event notification
US11288336B2 (en) * 2018-04-18 2022-03-29 Google Llc Systems and methods for providing content items in situations involving suboptimal network conditions
US11074310B2 (en) * 2018-05-14 2021-07-27 International Business Machines Corporation Content-based management of links to resources
WO2020206907A1 (en) * 2019-04-12 2020-10-15 平安科技(深圳)有限公司 Application program standby page switching method and apparatus, computer device and storage medium
US11074122B2 (en) * 2019-08-08 2021-07-27 International Business Machines Corporation Graceful degradation of user interface components in response to errors
CN111176765A (en) * 2019-12-13 2020-05-19 深圳市麦谷科技有限公司 Display method and system based on view container assembly and packaging method
CN115037801A (en) * 2022-03-14 2022-09-09 阿里巴巴(中国)有限公司 Priority adjustment method, electronic device, and storage medium
WO2024060106A1 (en) * 2022-09-22 2024-03-28 Citrix Systems, Inc. Providing web pages with generated content in response to uniform resource locator based penetration attacks

Similar Documents

Publication Publication Date Title
US7325045B1 (en) Error processing methods for providing responsive content to a user when a page load error occurs
US10896285B2 (en) Predicting user navigation events
JP4785838B2 (en) Web server for multi-version web documents
US7219162B2 (en) System and method for accessing content of a web page
US11163802B1 (en) Local search using restriction specification
US9606971B2 (en) Rule-based validation of websites
US20030158953A1 (en) Protocol to fix broken links on the world wide web
US8126946B2 (en) Method, apparatus and computer program for key word searching
US7818506B1 (en) Method and system for cache management
US7031968B2 (en) Method and apparatus for providing web site preview information
US6108493A (en) System, method, and article of manufacture for utilizing implicit ratings in collaborative filters
US9141722B2 (en) Access to network content
US20090119329A1 (en) System and method for providing visibility for dynamic webpages
US20070143271A1 (en) System and method for appending security information to search engine results
US20070083649A1 (en) Performance monitoring of network applications
EP2727011A1 (en) Predicting user navigation events
US9754028B2 (en) Automatic crawling of encoded dynamic URLs
US20080091775A1 (en) Method and apparatus for parallel operations on a plurality of network servers
US9400843B2 (en) Adjusting stored query relevance data based on query term similarity
US7895337B2 (en) Systems and methods of generating a content aware interface
US8577912B1 (en) Method and system for robust hyperlinking
US7725435B1 (en) Method and apparatus for a dynamic web portal with content distributed network content availability and user locality
Purcell SophieJS: A transparent user effort capture system for Sophie P2P search
WO1998054654A1 (en) Method of annotating displays and an annotation module

Legal Events

Date Code Title Description
AS Assignment

Owner name: A9.COM, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AMAZON.COM, INC.;REEL/FRAME:015341/0120

Effective date: 20040810

Owner name: A9.COM, INC.,CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:AMAZON.COM, INC.;REEL/FRAME:015341/0120

Effective date: 20040810

AS Assignment

Owner name: AMAZON.COM, INC., WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MANBER, UDI, MR.;TESLER, LAWRENCE, MR.;LEBLANG, JONATHAN, MR.;AND OTHERS;REEL/FRAME:019804/0465;SIGNING DATES FROM 20031008 TO 20031208

STCF Information on status: patent grant

Free format text: PATENTED CASE

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20200129