I’m not going to write about whether I think mod_pagespeed is good or not, is it suitable for your website, why you should use it or not. I’ll focus only on installation.
Since you’re here and still reading I assume you want to speed up your website with Google’s mod_pagespeed. If you’re on a machine where for any reason installing from .rpm or .deb is not possible read on.
Dependencies
First we need to install Chromium ‘depot_tools’, which are used to build multiple open-source projects with dependencies on other open-source projects.
mkdir ~/bin cd ~/bin svn co http://src.chromium.org/svn/trunk/tools/depot_tools
You will need to add the depot_tools to your path. i.e. in bash:
export PATH=$PATH:~/bin/depot_tools
Check out mod_pagespeed and dependencies
mkdir ~/mod_pagespeed # any directory is fine cd ~/mod_pagespeed # always check for latest version by going to http://modpagespeed.googlecode.com/svn/tags/ in your browser # then copy link to /src ie. http://modpagespeed.googlecode.com/svn/tags/X.X.X.X/src gclient config http://modpagespeed.googlecode.com/svn/tags/0.9.1.1/src gclient sync --force # this will download all source code
Compile mod_pagespeed
cd ~/mod_pagespeed/src make BUILDTYPE=Release # BUILDTYPE defaults to 'Debug'
Install mod_pagespeed
First edit centos.sh and change parameters according to your needs. Then run it.
vim install/centos.sh cd install ./centos.sh ./centos.sh staging ./centos.sh install
Restart Apache
/etc/init.d/httpd restart
Check if Apache loaded mod_pagespeed.
httpd -M # list static and shared modules, mod_pagespeed should be here httpd -l # list compiled in modules
If above doesn’t work try something like this:
/usr/src/httpd/httpd -M /usr/src/httpd/httpd -l
If it’s there go to /etc/httpd/pagespeed.conf and configure it. I’ll write a bit more about configuring mod_pagespeed in my next post. If it’s not there make sure mod_pagespeed.so is in Apache module directory and if not copy it there.
locate mod_pagespeed.so cp /tmp/mod_pagespeed.install/mod_pagespeed.so /usr/local/apache2/modules/
Edit your Apache configuration file and add Include /etc/httpd/pagespeed.conf if it isn’t already there. Next edit /etc/httpd/pagespeed.conf and add
LoadModule pagespeed_module /usr/local/apache2/modules/mod_pagespeed.so
Restart Apache and you should see something like X-Mod-Pagespeed: 0.9.1.1-173 in your website’s response headers.
References:
http://code.google.com/speed/page-speed/docs/using_mod.html
http://code.google.com/p/modpagespeed/wiki/HowToBuild