Skip to content
This repository

A subset mirror of the Google Libraries API CDN meant to be served from your local development machine when internet access is lacking.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 vendor
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .rbenv-version
Octocat-spinner-32 .rvmrc
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 README.markdown
Octocat-spinner-32 Rakefile
Octocat-spinner-32 libraries.txt
README.markdown

Google Library APIs Mirror

This is a subset mirror of the Google Libraries API CDN meant to be served from your local development machine when internet access is lacking.

Instructions

Step 0: Clone this repository

git clone git://github.com/rmm5t/googleapis-mirror.git

Step 1: Run rake sync to download a copy of all the libraries listed in libraries.txt.

You'll probably want to run this step before you lose internet access.

Step 2: Run sudo rake serve or just sudo rake (serve is the default task). This binds a new virtual IP address (172.16.88.88) to the loopback interface, and maps ajax.googleapis.com to it using the OS X Directory Service. It also starts a web server bound to the new virtual IP address such that http://ajax.googleapis.com/ behaves like a local mirror for the Google Libraries.

NOTE: You must run this as sudo. To stop the local web server mirror, just Ctrl-C the rake process.

Alternatives

If you aren't on OS X, you can alternatively map ajax.googleapis.com to 127.0.0.1 using /etc/hosts or any equivalent. You will also need to create a virtual host on your local web server to serve ajax.googleapis.com. Here's an example for Apache:

<VirtualHost *:80>
  ServerName ajax.googleapis.com
  DocumentRoot "/path/to/googleapis-mirror"
  <Directory "/path/to/googleapis-mirror">
     Options Indexes
     Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>

Author

Ryan McGeary (@rmm5t)

Other

MIT License

Copyright (c) 2010, Ryan McGeary (ryan -[at]- mcgeary [dot] org)

Something went wrong with that request. Please try again.