Prism logo
no proxy     Help

Prism Multi-Device Web Proxy

This tool enables investigation of server-side content adaptation methods by allowing the user to request a given URL through a proxy that mimics the HTTP headers sent by multiple different devices, simultaneously.

This service is still in beta testing and may not work well with all sites

How it works

Each device is represented in an iframe whose source is the requested URL, but loaded via multiple different proxy servers, each one of which represents a different physical device. Each proxy host uses a different set of HTTP headers that mimic the device in question. Thus, from the server point of view, the requests are coming from multiple different mobile devices and different content may be sent for each.

A side effect of each URL being loaded in an appropriately sized iframe is that responsive web designs that use media queries will function correctly also.

Pie Charts

The pie charts represent how the overall page weight is divided up between the different content types fetched to build the page. The image category represents MIME types image/png, image/jpeg, image/gif and image/svg+xml. The colour scheme is as follows: HTML, images (JPEG, PNG, GIF, SVG), CSS, JavaScript and other (Flash, JSON etc.).

Linking

You can deep-link directly to a site to test using the following format: http://prism.mobiforge.com/?url=go.mobi

Notes

  • This is a discovery tool rather than a test tool—because a desktop browser is being used to render the content, this is not a good way to test how content will render on real devices. Real mobile devices have restrictions that desktop browsers don't have and use different fonts and rendering engines in their rendering of content. Additionally, JavaScript support varies widely across mobile devices and this can have big effects on the final rendered content.
  • This is a proxy-based tool so HTTPS sites are (deliberately) not supported for security reasons.
  • Byte count figures will be correct only if you clear your browser cache beforehand—if your browser has already fetched a resource it may choose to use a cached version rather than re-getting the content. No cache headers are added to everything that the proxy sends back to the browser but results are not guaranteed.
  • Byte counts are updated only for the initial load—subsequent clicks within each iframe are not recorded.
  • Sites that incorporate frame-breaker scripts may not work. Some of these scripts are stripped by the proxy, but not all.
  • Only GET requests are supported for now—POST requests do not work, meaning logins etc. are out of scope for now.
  • GZIP encoding is not yet supported (but will be) meaning that hosts that insist on sending GZIP-compressed content are not supported.
  • Cookies are discarded (deliberately) so that settings don't get in the way of adaptation rules. Specifically, this means both that cookies sent by the server are discarded, but also that any previously-set cookies sent by the client will not not reach the server.
  • URIs in HTML5 data-* attributes are not yet rewritten, which can cause problems with some sites.
  • The proxy rewrites all links in HTML, but doesn't have visibility of AJAX requests, meaning that the byte totals may not be correct if page content is fetched via AJAX requests.
  • The "no proxy" setting bypasses the proxy server and merely renders the URL under test in the differently sized iframes i.e. no user-agent strings are changed for each device.

Please send questions and feedback to @xbs or rcremin@afilias.info.

Key: HTML images CSS JavaScript other
Site dynamic range factor: