Azure Web App deployment slots are used to help roll out new versions of an app without downtime or cold start activation. New version is typically deployed to a staging slot, then after testing and final verification it gets swapped into a production slot. During the swap operation the Web App’s worker process may get restarted in order for some settings to take effect. Even though the swap does not proceed until the restarted worker process comes back online on every VM instance, it may still not be enough for application to be completely ready to take on production traffic. This post explains how you can use the recently enabled Application Initialization Module to completely warm up your application prior to swapping it into production. Continue Reading »
Archive for the 'PHP' Category
In the beginning of the year Windows Azure Web Sites team has released a preview of the Staged Publishing functionality. The Staged Publishing allows you to create a staging site slot where you can publish a new version of the website and then test it before swapping to the production environment. This feature together with Continuous Deployment via GitHub, BitBucket or DropBox enables some very powerful deployment scenarios.
However the preview release did not provide the optimal experience for enabling Continuous Deployment (CD) for staging site. User had to configure a non-trivial workaround as described in blog post by Rick Rainey. Recently the Azure Web Sites team has released an update that fixes that problem and makes the setup of the CD with staged publishing very simple. This blog post describes how to enable CD from git repository located on BitBucket. Continue Reading »
Windows Azure Web Sites has recently been upgraded to a new version. Among all the improvements and bug fixes in the new version there is one change that fixes a known issue with update of WordPress plugins. There have been numerous questions about this problem at the Azure Web Sites forum. Continue Reading »
The need to diagnose and troubleshoot application’s failures often comes up during deployment to a hosting environment. Some configuration settings in hosting server may differ from what application expects. Often it is not as easy to figure out the cause of the problem in a hosting environment as it is on a development machine. I found the following techniques useful when troubleshooting errors in PHP applications hosted in Windows Azure Web Sites.
This is the most obvious, but very often the most helpful diagnostics tool. The output of this function provides a lot of information about the PHP runtime. Use it to determine what PHP extensions are enabled, what are the PHP configuration settings and what values are stored in server environment variables. Continue Reading »
In my previous post about the migration of a WordPress site to Windows Azure I mentioned that I used phpMyAdmin to import existing blog data into a MySql/ClearDb database in Windows Azure. phpMyAdmin is a web based tool for administering MySql databases. It can be used to create tables, edit the data in tables, export/import/backup data and many other tasks. I found it to be an adequate tool for all MySql db administration needs in Windows Azure. This post describes how to install and configure phpMyAdmin on Windows Azure Web Sites. Continue Reading »
I have not been writing any blog posts for a while. That was because for the past two years I have been busy working in a team that develops the Windows Azure Web Sites – a scalable web hosting platform in Windows Azure.
Now that the Windows Azure Web Sites (WAWS) is publicly available I decided to try to move my site from private hosting to Windows Azure. My site uses WordPress (with MySql database), PHP 5.3, WinCache object and user cache, URL rewriting and many WordPress plugins. With all these different technologies (many of which are not developed by Microsoft), I thought it would be a good test of how WAWS is capable of running web sites that use open source technologies. Plus I expect that my site will be more reliable and available, comparing to my previous private hosting.
I was pleasantly surprised that the migration from private hosting to WAWS hosting was relatively quick and simple. The site has been running successfully in a Shared compute mode for a while now and none of the site’s functionality has been lost or altered. In this post I’ll explain the steps I took to move my site to WAWS hosting. Hopefully it will be useful to those who are planning to migrate their WordPress based site to WAWS. Continue Reading »
The latest release of PHP Manager 1.2 for IIS now includes Windows PowerShell commands that can be used to install, configure and manage PHP on IIS 7 from command line. In addition those commands can be used to automate the configuration and management tasks.
Here are examples of what can be done with PHP Manager command line tools: Continue Reading »
The WinCache extension 1.1 for PHP has been released last year. Since then several customers reported a bug in the extension that prevents WordPress and other PHP applications from performing automatic upgrades of their plugins. This was reported on WordPress forum as well as on WinCache forum.
The new build of WinCache with the fix for this problem is available now at the following location:
The latest dev build at that location is a release candidate build. Several customers have already verified that this build fixes the problem and is running stable in their environments. Please try it out and let me know if it works or does not work for you. The things to try and to look for are:
- Try to auto-upgrade any of the WordPress plugins;
- After installing this build check the Windows Application event log from time to time looking for errors caused by module “php_wincache.dll”.
A new release of PHP Manager for IIS (version 1.1.2) is available for download. This release includes translations into 5 languages:
- German – the translation is provided by Christian Graefe
- Dutch – the translation is provided by Harrie Verveer
- Turkish – the translation is provided by Yusuf Oztürk
- Japanese – the translation is provided by Kenichi Wakasa
- Russian – the translation is provided by Ruslan Yakushev
Thanks to above mentioned people for providing these high quality translations! The PHP Manager Project is still looking for volunteers who can help with Spanish, French and Chinese translations.
Note that this release still includes English and it is recommended to upgrade even if you do not need these translations.
Use Web Platform Installer to get the latest release of PHP Manager for IIS (make sure to upgrade to the latest build of Web Platform Installer to get this release of PHP Manager).