Archive

Category Archives for "Performance"
5

Cache Plugin Setup

DAP works great with the WP Super Cache plugin. Probably works with others too – but we have officially tested it with just Super Cache at this time.

And this page below walks you through the full set up of the WP Super Cache plugin.
___________________________________________________________

Go to Settings > WP Super Cache

You are now on the “Easy” tab. Don’t do anything here just yet.

Go to Advanced tab.

Be sure to put a “Check” (or “Select” the radio button) next to each of the following items
Caching

Cache hits to this website for quick access. (Recommended)
Use mod_rewrite to serve cache files. (Recommended)

Miscellaneous

Compress pages so they’re served more quickly to visitors. (Recommended)
Don’t cache pages for known users. (Recommended)
Don’t cache pages with GET parameters. (?x=y at the end of a url)
Cache rebuild. Serve a supercache file to anonymous users while a new file is being generated. (Recommended)

Advanced    

Clear all cache files when a post or page is published or updated.
Extra homepage checks. (Very occasionally stops homepage caching) (Recommended)
Only refresh current page when comments made.
List the newest cached pages on this page.

Click on Update Status button.

Keep scrolling down until you see the Accepted Filenames & Rejected URIs section.

You’ll see a big text area under the text “Add here strings (not a filename) that forces a page not to be cached”. +

There, add the following, one per line.
/dap/
/dap/.*\.php
/dap/admin/
/dap/admin/.*\.php
/login/
/members/
/my-profile/
/my-content/

 

Obviously, your member content page URL’s may be slightly different. So make sure you customize it to suit your own URL’s.

Next to back to Easy tab at the top.

Now you select the “Caching On” option and save.

That’s it for the setup.

Now, on to testing.

Content Organization Tips

If you organize all of your member content under a main parent page, say “members”, then all you need to exclude from caching, is /members/

For example, if your URLs include year and you don’t wish to cache last year posts, it’s enough to specify the year, i.e. /2004/. WP-Cache will search if that string is part of the URI and if so, it will not cache that page.

So basically, excluding just one single URL – /members/ – from caching, will make sure all of the following as well remain UN-CACHED.

/members/login/
/members/home/
/members/my-content/
/members/my-profile/
/members/my-affiliate-info/
/members/course-1/
/members/course-1/module-1/
/members/course-1/module2/
/members/course-2/module-1/
/members/course-2/module2/

You get the idea. When you exclude “/members/”, any URL that starts with that same text, will be excluded.

So here’s how you set up the “hierarchy” of the pages.

First, create the page “members“.

Then, when you create the “login” page, make sure you select the “parent” of the page, to be the “members” page.

So, instead of the login page URL looking like… http://YourSite.com/login/

… because the parent page is “members”, that also gets added to the URL, and the login page URL becomes like this:

http://YourSite.com/members/login/

If you created a page called “example” and made the “login” page as its parent, then the URL for this new page becomes:

http://YourSite.com/members/login/example/

So you see how that hierarchy works. Use that to arrange all of your member content under the main “ancestor”, which is “members”, here in our example.

But if you have already completed creation of all of your content, then you’re just going to have to do a little extra work to identify all of your pages and posts and exclude the member content from the list. DAP makes this a little bit easier as well.

Getting A Full List Of Pages & Posts

If you log in via FTP and go to the “dap” folder, inside, you will see a file called “dap_permalink_dump.php”. If you download that file to your desktop, and open it with any text editor (Notepad, Dreamweaver, etc), inside you will see a full list of URL’s of all posts and pages from your WordPress site. You can just take that list, remove separator text like “Posts” and “Pages”, and trim the list of URL’s down to just your member content, you can take that and paste it right into the WP Super Cache > Advanced tab > Accepted Filenames & Rejected URIs section.

Testing Caching Impact

Now open multiple browsers – like Firefox, Chrome and Internet Explorer (or Safari). Use at least 3 separate browsers.

Next, go to your login page in one of them, and then log in. Then go to same login page in another browser – make sure it doesn’t say “You are already logged in”. It should show you the DAP login form. Same on third browser.

Next go to the profile page while logged in as member. Do the same in other two browsers, while logging in as three different people. Each profile page should you show you different information.

If you crated 3 separate products, with 3 different users, then logging in as those 3 different users on the 3 different browsers, should show you 3 different sets of pages.

All this is just to make sure there’s no caching going on of your membership content, that’s all.

If all of this works, then you’re all set with caching for your non-membership content, and no caching for your dynamic member content.

5

Optimizing Your WordPress Blog For Speed

If you want to speed up your web site, you must address the core issue, which is — your web site is getting more traffic than your web server (web hosting account) can handle.

So here are a few ways in which you can speed up your web site:

  • The easiest thing you can do is to revisit all of your plugins that you have enabled and see if you still need all of them. Remember that every single additional plugin running on your site, adds some overhead to (basically, “slows down”) your web site or blog. So use only as few plugins as you absolutely must. With so many cool plugins freely available for WordPress, it is very easy to get carried away, and install tens of plugins, most of them adding very little value, but sometimes causing the most overhead in terms of server resources. So keep only a bare minimum of other plugins (some social plugins are a real pain – making calls to third-party web sites to get their information from).
  • Using a “cache” plugin for speeding up your site is like putting band-aid on a gaping wound. It’s only a temporary fix, and not a real long-term solution, but every bit helps. We recommend WP Super Cache, and be sure to whitelist all of your member pages from getting cached.
  • Make sure you are always using the latest version of WordPress, or at worst, one version behind the very latest and greatest (you definitely want to be sure first that there are no conflicts with other critical plugins that you’re using on your site).
  • Make sure you update all of the plugins and themes you’re using to their individual latest versions (get rid of every single plugin and theme that you’re not using).
  • If you are hosting on a shared (a.k.a “cheap”) web host paying just a few dollars a month for hosting, then your web site is basically competing for server resources (like memory and bandwidth and database access) with possibly tens (or even hundreds) of other web sites on that same server (many may not belong to you, but to others with whom you are sharing the server – and hence the name “shared hosting”). Search for the keywords “digg effect” or “slashdot effect” on Google, and you’ll see how many WordPress sites crash when a link to the site appears among the top results in popular social sites like Digg.com, Reddit.com or Slashdot.com.If your traffic levels have outgrown your server, then the best thing you can do is to upgrade to a bigger server, or get a Virtual Private Server, or even get a dedicated host, depending on your budget. See our recommended web hosts list.
22

Conflict With “Cache” Related Plugins

DAP Now Works With WP Super Cache

If you’re having weird issues – like members logging in and seeing other people’s profile information, or logging in as a valid user and being told “Sorry, you don’t have access to this content” – then it’s probably because of a “cache” plugin.

Do not use cache plugins on your membership site

DAP now fully works with WP Super Cache (and possibly other cache plugins too).

You just need to make sure that you exclude your member content (including the login page) from being cached.

Cleaning Up After Your Cache Plugin

Follow the steps below to clean up some the junk left behind by cache plugins (regardless of whether you see them in your plugins section, and regardless of whether they are currently active).

1) You wish to disable your cache plugin that is currently enabled

2) You previously had one enabled at some point in the past

3) You don’t believe you ever had a cache plugin enabled in the past

4) You were redirected to this page by the DAP support team because of potential caching-related issues

  1. De-activate the plugin if it is still active
  2. Open your wp-config.php file.
  3. If there are lines in there that look like this…
    define(‘WP_CACHE’, true); //Added by WP-Cache Manager
    define( ‘WPCACHEHOME’, ‘/home/wp-content/plugins/wp-super-cache/’ ); //Added by WP-Cache Manager
  4. Then comment out both lines, by adding a “//” at the beginning of each line, like this.
  5. //define(‘WP_CACHE’, true); //Added by WP-Cache Manager
    //define( ‘WPCACHEHOME’, ‘/home/wp-content/plugins/wp-super-cache/’ ); //Added by WP-Cache Manager
  6. Go to your /wp-content/plugins/ folder. See if there’s a folder in there called “cache”. If yes, then rename it to “_cache”.

Now re-test whatever the issue was before, and it would have probably been resolved now.

That should do it.

If the issue still persists, let us know via a support ticket.

14

Storing and Protecting Video, Audio and Other File Formats

=> Click here to see a demo of S3MediaVault Streaming video/audio player

Q1: What’s the difference between storing files on Amazon S3 (and serving it using the S3MediaVault.com plugin), compared to storing the files right on your own web site and having DAP serve them directly to your members?

A: See this post How and Why to use Amazon S3 to Deliver Audio, Video and PDF on your WordPress website

If all files are stored right on your web site, and you have a large amount of video, audio and other files, then a lot of people viewing and downloading them from your site will use up a lot of resources on your server – like site loading time, server memory, server bandwidth, etc – and your site could slow down considerably. Plus, on top of that, there may be bandwidth charges that your host will charge you with for all of those downloads, which are usually not very cheap.

And don’t put too much faith in your web host’s “Unlimited Bandwidth” clause, because if you read the fine-print carefully, you’ll see that as per their TOS, if you consume large amounts of bandwidth and use too much of the server resources, this could cause other web sites (belonging to others) on the same server to slow down and have a degrade in performance, especially if you are on a shared hosting account. And they could consider this abuse of their TOS, and could either slap you with huge bandwidth or server utilization fees, or may even ask you to take your web site elsewhere because you’re causing issues for other site owners on the same server.

Instead, if the files are stored on Amazon S3, then you don’t have to worry about your site slowing down, or you using up too much bandwidth and getting slapped with huge bandwidth fees, because the files are being served from Amazon’s huge S3 servers which have tons more resources and speed compared to your web host.

Plus in the long run, bandwidth is cheaper on S3 compared to your web host.

Q2: Can DAP protect content stored on an external site, like Amazon S3?

A: Not directly, not by itself. By default, DAP can only protect files (and any other content) that is on the same web site where DAP is also installed. For large files, we do recommend that you store files on a fast, scalable file server like Amazon S3. Now, the page or post itself (in which you post that Amazon S3 link) can be protected by DAP, and no un-authorized user can even see the content of the page (or the link within that page).

However, once a user has authorized access to a page because they’re a member, now they can see the page where you have that Amazon S3 link.

It’s similar to posting a public YouTube video on a protected DAP page on your web site. Sure, DAP can protect the page from un-authorized users, but authorized users can actually see the page, and see that it’s a YouTube video, and clicking on that video will directly take them to a page on YouTube.com, which DAP has no control over, and cannot protect once they leave your web site.

Similarly, DAP cannot directly protect that external link to your file stored on Amazon S3. And that’s where our Amazon S3 plugin S3MediaVault.com (S3MV) comes into the picture.

S3MV can make sure that your files on Amazon S3 cannot be accessed directly by anyone, even if the link were shared with others via email or on a forum, and can ONLY be accessed through a page or post on your web site (web site where you have installed the S3MV WordPress plugin).

NOTE: The S3MV plugin is included for free with your purchase of any DAP license, starting with the Unlimited-site license and above.

Q3: Can S3MediaVault prevent members from downloading the protected videos or audios?

A: Yes. S3MediaVault offers “true streaming”, as well as standard “Progressive Downloads”. You can choose either option for your videos and audio.

If you want them to be able to download the files, S3MediaVault allows you to do that.

And if you do NOT want them to be able to download the files, S3MediaVault help you prevent downloads as well.

S3MediaVault is the first-ever WordPress plugin that lets you create encrypted Streaming Video and Streaming Audio.

“Impossible to Download” Streaming Videos: We highly recommend allowing paying members to download your content for offline use. And S3MediaVault very much allows you to create secure download links for all of your content – Video, Audio, PDF, etc.

However, for some reason, if you do *not* want anyone to download your videos/audio, then S3MediaVault can do that too.

S3MediaVault allows you to create HLS Videos with industrial-strength AES 128-Bit Encryption for both your videos and audio. This is “True Streaming” at its best, with the strongest security available for streaming videos and audio.

None of your website visitors, subscribers, or members will be able to download your videos from your website. Even software like Internet Download Manager (IDM) or browser extensions like Video Downloader or Video DownloadHelper will not be able to download your streaming video or audio. S3MediaVault is the only WordPress plugin that can create this level of security. Check out our encrypted streaming demo here.

Multi-Resolution Streaming with “Resolution Switcher” and “Video Stream Optimization”: S3MediaVault allows you to create streaming video in multiple resolutions. You can choose the resolutions in the Settings page – 1080p, 720p, 360p, 240p and 144p. And S3MediaVault automatically encodes your video in all of those resolutions with a single click. And when the viewer clicks play on the video, the S3MediaVault video player will automatically choose the lowest-but-best resolution for the viewer based on their internet speed. So, if they’re watching from a device which has slow internet speeds (like 3G, or 4G or maybe they’re using a service that doesn’t offer high-speed internet, or maybe throttles mobile access), the player will serve them the most optimized quality of video. That means, your streaming videos will load quickly for them regardless of their internet speed, saving them on their bandwidth bill, as well as saving you on your AWS bandwidth bill (win/win FTW!).

In addition, just like you can do on YouTube, your viewers will be able to change the resolution to a higher or lower number, and the switch will happen seamlessly without affecting their viewership experience.

S3MediaVault is the most secure plugin that can secure your content and make sure it’s only available on your website.

Combine that with the Page/Post protection of DigitalAccessPass (DAP), which can make sure only certain people (like paid members, or free but registered users) can access the post or page where the S3MediaVault embed code is published.

Combine DAP + S3MediaVault, and you would have now completely locked down your content from any and every kind of unauthorized and illegal access.