Making WordPress to Load Faster on Rackspace Cloud Sites

Advertisement

Making WordPress to Load Faster on Rackspace Cloud Sites needs WP Super Cache,CDN Sync Tool, HyperDB, .htaccess tricks and tweaks to make buggy plugins working. This process of making WordPress load faster will never be described anywhere, because the combination of WordPress plus Rackspace Cloud Sites is difficult to find among the plugin developers. As Rackspace unfortunately has not much interest to develop a WordPress Plugin of their own, we the end users manually need to work for making WordPress load faster on Rackspace Cloud Sites.

Making WordPress to Load Faster on Rackspace Cloud Sites : How Much Fast ?

1 second for a blank new WordPress site, here is the proof :

Vim

1

http://www.webpagetest.org/result/121008_T9_AKA/1/details/

You might apply these methods described in this Making WordPress to Load Faster on Rackspace Cloud Sites on non Rackspace Cloud Sites, but the server might break down as we will give extreme stress on the server, which is an endless source of computing power with no php memory limit.

Making WordPress to Load Faster on Rackspace Cloud Sites : Steps

You are using Genesis Theme framework, others will never give such optimal result due to a big factor – it is hand coded and by default has no W3C error, inline CSS etc. I can neither can give 100% warranty for the others nor can make you buying Genesis.

Installation of HyperDB

HyperDB is not really a plugin, it is like two php scripts. Please download it from WordPress.org and uncompress on your desktop. Now create two new database and fill the fields as described in that plugin’s guide. There is no extra trick except just noting the default settings (this is optimal) in db-config.php file :

Vim

1

2

$wpdb->save_queries=false;

$wpdb->persistent=false;

Optimizing .htaccess

The full code I found to be useful and fool proof way is to add these for making WordPress load faster on Rackspace Cloud Sites plus security :

Vim

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

RewriteEngineOn

RewriteCond%{HTTP_HOST}^www.abhishekghosh.pro[NC]

RewriteRule^(.*)$http://abhishekghosh.pro/$1[L,R=301]

php_value memory_limit1024M

<ifModule mod_gzip.c>

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file.(html?|txt|css|js|php|pl)$

mod_gzip_item_include handler^cgi-script$

mod_gzip_item_include mime^text/.*

mod_gzip_item_include mime^application/x-javascript.*

mod_gzip_item_exclude mime^image/.*

mod_gzip_item_exclude rspheader^Content-Encoding:.*gzip.*

</ifModule>

<filesMatch".js$">

AddHandler application/x-httpd-php.js

php_value default_mimetype"text/javascript"

</filesMatch>

<filesMatch".css$">

AddHandler application/x-httpd-php.css

php_value default_mimetype"text/css"

</filesMatch>

<filesMatch".(htm|html|shtml)$">

AddHandler application/x-httpd-php.html

php_value default_mimetype"text/html"

</filesMatch>

##EXPIRES CACHING##

<ifModule mod_expires.c>

ExpiresActive On

ExpiresByType image/jpg"access 1 year"

ExpiresByType image/jpeg"access 1 year"

ExpiresByType image/gif"access 1 year"

ExpiresByType image/png"access 1 year"

ExpiresByType text/css"access 1 month"

ExpiresByType application/pdf"access 1 month"

ExpiresByType text/x-javascript"access 1 month"

ExpiresByType application/x-shockwave-flash"access 1 month"

ExpiresByType image/x-icon"access 1 year"

ExpiresDefault"access 2 days"

</ifModule>

##EXPIRES CACHING##

<ifModule mod_headers.c>

<filesMatch"\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">

Header setCache-Control"max-age=2592000, public"

</filesMatch>

<filesMatch"\.(css)$">

Header setCache-Control"max-age=604800, public"

</filesMatch>

<filesMatch"\.(js)$">

Header setCache-Control"max-age=216000, private"

</filesMatch>

<filesMatch"\.(xml|txt)$">

Header setCache-Control"max-age=216000, public, must-revalidate"

</filesMatch>

<filesMatch"\.(html|htm|php)$">

Header setCache-Control"max-age=300, private, must-revalidate"

</filesMatch>

</ifModule>

#prevent browsing of readme file

<files readme.html>

order allow,deny

deny from all

</files>

#prevent editing htacess itself

<files.htaccess>

order allow,deny

deny from all

</files>

#prevent viewing of install file

<files install.php>

order allow,deny

deny from all

</files>

There are two methods applied for leveraging browser cache. There is reasons. The red letters should be changed. You can change your php_value memory_limitto anything, like 8999, there is actually no limit physically. But you will never need more than 512 MB, for more safety, I made it double. You must double if you have two sub folders with WordPress inside them.

Making WordPress to Load Faster on Rackspace Cloud Sites by WP Super Cache

Some of these will conflict with what Rackspace says , but listen to me ! Here are the things :

Advanced Tab :

Select these option to make active :

Cache hits to this website for quick access. (Recommended)

Use mod_rewrite to serve cache files. (Recommended)

Compress pages so they™re served more quickly to visitors. (Recommended) [Rackspace says no, but it actually works]

Don™t cache pages for known users. (Recommended)

Don™t cache pages with GET parameters. (?x=y at the end of a url) [To avoid Google Custom Search Pages facing problem]

Cache rebuild. Serve a supercache file to anonymous users while a new file is being generated. (Recommended)

Add wp-admin, wp-includes, wp-content and save it. Do not add any CDN url or do not tick mark to make it active now !

Advertisement

---

Preload Tab :

Refresh preloaded cache files every [3600] minutes. I use 3600, you can use higher if you post less than 4 post per day. Less will suck your compute cycles. Too high will make Google not to crawl (as people says). Make that option “Preload mode (garbage collection only on legacy cache files. Recommended.)” active and hit update settings.

Making WordPress to Load Faster on Rackspace Cloud Sites by CDN Sync Tool

It is quite easy, at least appears so. But it has hundreds of bugs. What you have to do is :

Create a Cloud Files Container, Publish it, set the TTL to 9999 (keep pressing 9, its probably four 9 at maximum), copy the http url of cdn and paste all the data inside CDN Sync Tool plus your API key.

Sync all files first.

Then sync wp-admin.

The buggy thing is, CDN Sync tool is developed by a bunch of morons who has no idea about PHP codes. He/they has/have copy pasted php codes from GitHub to promote his website. That minified javascript will be added as link rel when you will make both CSS and java script minified option active and sync them, but it will vanish the rel link of css. So you will get a CSS less webpage.

Fixing the Moron’s work

As ultimately we have to make it working, install wp-minify plugin and temporally deactivate CDN Sync Tool. You will get the minified CSS, some what like this if you check the box in advanced setting saying make pretty link or like that :

Save it. Now activate CDN Sync tool again and Re – Sync all and force to sync :

Vim

1

wp-content/plugins

Deactivate Wp Minify (our main work was to get a working good combined css, there is risk with CDN Sync Tool’s one, it will get deleted as it is active !) and make the options of both CSS and JS actively minified and put JS on body. Now install a plugin named Genesis Simple Hooks. Though it add the CSS rel link in this way (eliminating the query string) after manually uploading and replacing the CSS file in your CDN‘s :

Vim

1

/wp-content/plugins/wp-minify/cache/

pseudo folder while opened through Cyber Duck. Add this rel tag through Genesis Simple Hook’s appropriate box to get output before header ends :

By the way, upload the favicon.ico through Cyber Duck too. It will be in theme’s image’s folder in case of Genesis. So now all static things are on CDN ! This quite painful for Making WordPress to Load Faster on Rackspace Cloud Sites, but once done, practically you will have nothing to do. Only clean the uploads folder every few days as CDN Sync Tool will accumulate hundreds of css and js and will never delete them. CDN Sync Tool will automatically upload new images if you add. If you add a new plugin which has css at front end, you have to again generate the compressed css through wp-minify plugin and upload through Cyber Duck, sync wp-content/plugins folder.

This method for Making WordPress to Load Faster on Rackspace Cloud Sites will take hardly 1 hour but you will get a really faster website using the power of Rackspace Cloud Files fully. W3 Total cache makes all automated but actually this method for Making WordPress to Load Faster works far better for Rackspace Cloud Sites.

As a foot note, in wp-content folder you will find a file named wp-cache-config.php. There will be a line saying :

Vim

1

//$use_flock=true;//Setit true or false ifyou know what to use

Remove those two // and the space and save it. Test your website on webpagetest.org after clearing the cache, preloading it, waiting for 15 minutes to get the files created again.
For Making WordPress to Load Faster on Rackspace Cloud Sites in this way, as it is ‘Rackspace” page speed experts take $500 to $1000 per site. Plus they will complain this is not like cPanel, that is bad (as they usually never use such optimized platform) etc. with a faint hope to fetch more money.