Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License, and code samples are licensed under the BSD License.
©2011 Google
This page tells you how to host .crx
files
on your own server.
If you distribute your extension, app, or theme solely through the
Chrome Web Store,
you don't need this page.
Instead, consult the store help and
developer documentation.
Note: If you've already published extensions to the Extensions Gallery, they will be merged into the store.
By convention, extensions,
installable web apps, and themes are served—whether
by the Chrome Web Store or by a custom server—as
.crx
files.
When you upload a ZIP file with the
Chrome Developer Dashboard,
the dashboard creates the .crx
file for you.
If you aren't publishing using the dashboard,
you need to create the .crx
file yourself,
as described in Packaging.
You can also specify
autoupdate information to ensure that
your users will have the latest copy of the .crx
file.
A server that hosts .crx
files
must use appropriate HTTP headers,
so that users can install the file
by clicking a link to it.
Google Chrome considers a file to be installable if either of the following is true:
application/x-chrome-extension
.crx
and both of the following are true:
X-Content-Type-Options: nosniff
The most common reason for failing to recognize an installable file
is that the server sends the header
X-Content-Type-Options: no sniff
.
The second most common reason
is that the server sends an unknown content type—one
that isn't in the previous list.
To fix an HTTP header issue,
either change the configuration of the server
or try hosting the .crx
file at another server.