Skip to main content
ModPageSpeed 2.0 and mod_pagespeed 1.1 — Now available

Fallback CSS URL rewriting

CSS

Rewrites URLs inside CSS even when the stylesheet cannot be fully parsed.

Filter fallback_rewrite_css_urls,rewrite_css,rewrite_images · Filter docs

A mod_pagespeed 1.1 filter. ModPageSpeed 2.0 applies it as part of one always-on pipeline, not as a separate switch.

Both frames render identically — that's the goal. The win is in the bytes and requests below, not the look. They're served live by mod_pagespeed 1.1 on demo-httpd-1.1.modpagespeed.com; the optimized frame applies only this filter. Right after a cache purge it may briefly match the original while the worker rewrites it — reload to see the result.

Measured impact

This filter changes how the page is structured or delivered, not its size — so there's no byte or request reduction to chart. The change shows in the source diff below.

What changed in the source

The page's HTML, before and after this filter. Red lines are removed, green lines are added.


                
                  
… 1 unchanged line …
<head>
<title>fallback_rewrite_css_urls example</title>
<style type='text/css'>
- body { background: url(images/Cuppa.png) no-repeat center; }}}}
+ body { background: url(images/xCuppa.png.pagespeed.ic.jf3PtqQ39N.png) no-repeat center; }}}}
/* Extra }s make sure that CSS parser cannot parse this. */
</style>
- <link rel="stylesheet" type="text/css" href="styles/fallback_rewrite_css_urls.css">
+ <link rel="stylesheet" type="text/css" href="styles/A.fallback_rewrite_css_urls.css.pagespeed.cf.Tt0__VZaAD.css">
</head>
<body>
<p>The background image should be rewritten or cache extended.</p>