This post explains how to improve performance of WordPress on Windows by using the WinCache Extension 1.1 – Beta for PHP. You probably already know that just by enabling the WinCache extension and without any code changes it is possible to get a significant increase in WordPress performance – this is described in details in PHP on Windows: The WinCache 1.0 Benchmark. But this can be taken even further by using the user cache API’s available in WinCache 1.1 release. Continue Reading »
ruslany on March 5th 2010 in PHP, WordPress
377 views
Today I have published a new release of the WP Silverlight Media Player plugin for WordPress. In addition to a few important improvements and optimizations, it contains a new feature that allows to track the number of times the video files have been watched and how many of those have been watched until the end.
Once you install or upgrade to this version of the plugin you should see a new menu group in the WordPress Dashboard: Continue Reading »
ruslany on August 15th 2009 in WordPress
1,613 views
Today I have upgraded my blog to the recently released WordPress 2.8 and to PHP 5.3 RC3 (VC9 Non Thread Safe build). If you are running WordPress (or any other PHP application) on IIS 7, then there are several reasons why it may be beneficial for you to upgrade:
- PHP 5.3 has a number of Windows-specific bug fixes and improvements that address stability and functionality problems which existed before when running PHP on Windows. For detailed list of all the changes and fixes, refer to the news.txt file included within the PHP zip file.
- PHP 5.3 has been compiled with the latest version of C compiler (VC9), which makes it run faster on Windows than any previous versions of PHP (which were compiled with VC6).
- WordPress 2.8 has built-in support for IIS 7 URL Rewrite Module. Refer to IIS 7 URL Rewrite Module support in WordPress 2.8 for more details.
Overall, the upgrade went pretty smoothly and the only thing that was different from the usual process of setting up PHP on Windows was the date.timezone setting in php.ini file. Starting with PHP 5.3, this setting must be explicitly set, e.g.:
date.timezone = America/Los_Angeles
After this successful upgrade I guess it is time now “to reward myself by reading that book or an article that I’ve been putting off, or simply sitting back for a few moments and let the world pass me by”.
Have you tried upgrading to PHP 5.3 on IIS recently? What was your experience?
ruslany on June 11th 2009 in PHP, URLRewrite, WordPress
6,166 views
I am pleased to let everyone know that WordPress development community has added a built-in support for IIS 7 URL Rewrite Module in the upcoming WordPress 2.8 release. Starting with version 2.8 the Permalink Settings page will allow you to easily configure “Pretty Permalinks” URL structure when WordPress is running on IIS 7 with URL Rewrite Module v1.1 installed.
Here is how the process of updating Permalinks structure will look like in WordPress 2.8 on IIS 7: Continue Reading »
ruslany on May 15th 2009 in PHP, URLRewrite, WordPress
4,840 views
Since the Silverlight Media Player plugin for WordPress was published in January 2009, it has been downloaded more than 900 times. It is being used in many web sites all over the world – here are just a couple of examples: Tribord Amure par Matthieu and Os Taekwon-do Klubb. Today, a new update of the plugin has been released. This update makes it even easier to add video content to your blog posts and pages. Continue Reading »
ruslany on April 25th 2009 in WordPress
3,968 views
Recently I was told about Smashing Magazine, which turned out to be a pretty useful site. It is targeted for web developers and web designers and it contains tons of information, tools and freebies for web developers. One of the article on that site was about 10 Steps To Protect The Admin Area in WordPress. In that article step #7 described how to use web server’s built-in authentication to provide an extra protection layer for wp-admin directory, where all WordPress admin scripts are located. The article described how to do that in Apache by using .htaccess file. In this post I will explain how to protect WordPress wp-admin directory on IIS 7.0 by using IIS built-in Forms Authentication. Continue Reading »
ruslany on February 6th 2009 in PHP, WordPress
3,440 views
At some point I wanted to integrate a Silverlight based player into my blog, so I was looking for a WordPress plugin that would do that. However, I could not find any that was easy enough to use. So I decided to write one myself for self-educational purposes. This post describes and demonstrates the plugin that I wrote and explains how to use it to add Silverlight-based media players to blog posts and pages of a WordPress powered blog. Continue Reading »
ruslany on January 7th 2009 in PHP, WordPress
9,618 views
This post has been updated to ensure that instructions are correct for the latest versions of the WP Super Cache plugin and IIS URL Rewrite Module.
The performance of WordPress may be sufficient for an average blog that gets a few page hits per minute. However, if your blog post suddenly shows up on digg.com or any other social networking site, it may become challenging for server to handle such huge spike in traffic. A few options exist to help server to cope with flood of requests:
- IIS Output Caching
- WP Cache plugin for WordPress
- WP Super Cache plugin for WordPress
In this post I will explain the benefits and drawbacks of each option and walk through the steps for configuring IIS and WordPress to use those options. Continue Reading »
ruslany on December 23rd 2008 in PHP, WordPress
6,218 views
The information in this post is not applicable anymore because the update that fixes the custom errors problem in IIS 7.0 FastCGI module has been made available . Read the release announcement to get more details about the update.
Recently, I found out that my WordPress powered blog did not correctly handle 404 – File Not Found errors. When a request was made to a non-existent page, then instead of getting nice WordPress based error page, visitors used to get a generic IIS 7.0 404 error page. Somehow, I have missed that part of the configuration when I set up WordPress initially. The fix for that turned out to be very simple, but since it seems to be a very common configuration task when hosting WordPress on IIS 7.0, I decided to explain the necessary configuration steps.
Continue Reading »
ruslany on December 5th 2008 in PHP, WordPress
2,860 views
IIS team has recently released an update for IIS 7.0 FastCGI module that fixes compatibility problems with several popular PHP applications. In particular, the update changes the behavior of FastCGI module in the following ways:
- REQUEST_URI server variable set by FastCGI module now includes query string and path info. Previously, lack of the query string in this server variable caused the popular CMS application Drupal to not work with FastCGI on IIS 7.0
- REQUEST_URI server variable now contains the originally requested URL path before any URL rewriting was performed. Prior to this fix, the server variable used to contain a final rewritten URL, which caused problems when using URL rewriting to enable “pretty permalinks” for popular blog engine Wordpress.
Note that above mentioned problems do not exist in IIS 6.0 FastCGI Extension, which always has been setting the REQUEST_URI server variable correctly.
The update is available for download from the following locations:
Warning: if your PHP application was coded in a way so that it relied on the REQUEST_URI server variable to contain the requested URL without a query string or to contain the final rewritten URL, then installing this update may break your application. Before applying the update, please make sure that your application does not rely on incorrect behavior of FastCGI module.
Acknowledgements: I want to thank IIS team members (Anil Ruia, Won Yoo, Yamini Jagadeesan) for providing this update and Zend Technologies team (Stanislav Malyshev) for validating the changes in FastCGI module.
ruslany on August 26th 2008 in FastCGI, PHP, WordPress
6,503 views