Additional Notes on WordCamp Sydney 2014 Talk “Make WordPress Fly With Virtual Server Hosting”

Thank you for coming to Vlad’s talk. Notes will be progressively added as time permits.

Query Monitor

Query Monitor is a useful WordPress plugin that lets you view information on database queries that WordPress performs when loading a page on your website.

https://wordpress.org/plugins/query-monitor/

PHP-FPM 5.5 for CentOS

CentOS does not come with PHP 5.5 as standard. It can be obtained from the REMI repository. Instructions can be found here:

http://blog.famillecollet.com/pages/Config-en

Once the repository is added, PHP-FPM 5.5 can be installed using the following command:

yum –enablerepo=remi-php55 install php-fpm

mod_fastcgi module for Apache 2.2

This is used to add fastcgi support to Apache (httpd), to enable it to pass requests to PHP-FPM

This does not come with CentOS 6. It can be obtained from the REPOForge repository:

To add support for this repository, follow the instructions here:
http://repoforge.org/use/

yum –enablerepo=rpmforge install mod_fastcgi

Enabling mod_deflate to compress HTML, text, CSS and JavaScript source files:

Add the following to .htaccess in your WordPress root folder:

# BEGIN compression
<IfModule mod_deflate.c>
    AddOutPutFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript
    <IfModule mod_setenvif.c>
        # Netscape 4.x has some problems...
        BrowserMatch ^Mozilla/4 gzip-only-text/html

        # Netscape 4.06-4.08 have some more problems
        BrowserMatch ^Mozilla/4\.0[678] no-gzip

        # MSIE masquerades as Netscape, but it is fine
        # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

        # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
        # the above regex won't work. You can use the following
        # workaround to get the desired effect:
        BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

        # Don't compress images
        SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    </IfModule>

    <IfModule mod_headers.c>
        # Make sure proxies don't deliver the wrong content
        Header append Vary User-Agent env=!dont-vary
    </IfModule>
</IfModule>
# END compression

SQL Query to determine the size of your MySQL databases

Useful for working out how big your MySQL key buffer/buffer pool should be

SELECT table_schema "Data Base Name", SUM( data_length + index_length) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;
css.php