If you have tried to enable SSL for your Azure Web App you know that the steps to do that are:
- Purchase certificate and export it into a PFX file
- Upload PFX file to a resource group that contains your web app
- Bind the web app’s hostnames to the certificate
Out of those steps the step #1 is the most non-obvious. Just by looking through the instructions in this article you can see that the process is complex and error prone.
Recently the Azure team has released an improved support for buying certificates for Azure Web Apps. Now it is possible to purchase a certificate without ever leaving the Azure Portal UI experience. In this blog post I’ll show how easy it is to buy a certificate and enable SSL for a Web App. As an example I will walk through the process of buying a certificate and enabling SSL for my web site http://ruslany.net/ Continue Reading »
ruslany on April 5th 2016 in Other, WAWS
Some time ago I had a blog post describing how to warm up an Azure Web App during deployment slots swap. In that post I explained the sequence of actions that happens during the swap. One important point in that explanation is that if a site has any app settings or connection strings that are marked as “Slot” then during slot swap those settings are read from target (e.g. Production) slot and applied to the site in the staging slot. That causes the restart of the site’s worker process so that those changes take effect and become visible as process environment variable.
The restart of the worker process is OK for the majority of the swaps. But sometimes it would be useful to pause right after the production settings were applied on the staging slot and before the actual swap of host names happens. Recently Azure Web Apps team has released a “Swap with Preview” feature that supports that use case. That feature will give you a chance to verify that the web site in the staging slot works fine with production settings. Also this will allow you to warm up/initialize the site in any way you want. For example you can generate some load on that site so that its cache is completely pre-populated. After you are satisfied with how the site works in staging slot you can complete the swap so that the site is moved to production slot and starts taking on production traffic. The site’s worker process will not be restarted during that step, which means that the worker process in production slot is exactly what you have tested in staging slot.
Note that currently this feature is in Preview meaning that it is ready to be tried but not yet recommended for use with business-critical applications.
To demonstrate how Swap with Preview works I’ve created a site and added a “Slot” setting to it with name “SlotName” and value “Production“. Continue Reading »
ruslany on October 30th 2015 in WAWS
This morning Microsoft has released a security update that addresses the ASP.NET Security Vulnerability. The PHP applications running on IIS are subject to this vulnerability if ASP.NET is enabled in IIS.
IMPORTANT: Even if PHP applications on IIS do not use any of the ASP.NET features the vulnerability still exists as long as ASP.NET is enabled. It is recommended to install the security update as soon as possible.
The security update is available today via the Microsoft Download Center. In a next few days it will also be distributed via Windows Update channels. Once the update is on Windows Update, you can run the Windows Update on your servers to automatically apply the security patch.
If you plan to download the updates directly from Microsoft Download Center then follow the instructions in Scott Guthrie’s blog at:
ruslany on September 28th 2010 in PHP
Update on Sep 28th, 2010: The security update for the vulnerability is available. More details can be found at PHP on IIS: get the latest security updates now.
Microsoft has recently released a Security Advisory about a security vulnerability in ASP.NET. This vulnerability exists in all versions of ASP.NET. The PHP applications running on IIS are also subject to this vulnerability if ASP.NET is enabled in IIS.
IMPORTANT: Even if PHP application is not using any of the ASP.NET features the vulnerability still exists as long as ASP.NET is enabled.
More information about the vulnerability can be found at the following links:
This blog post describes how to protect you PHP applications on IIS from attacks that exploit this vulnerability. Continue Reading »
ruslany on September 22nd 2010 in PHP
Today IIS team has published the final release of WinCache Extension 1.1 for PHP. This is the latest stable and production ready version of the extension. The v1.1 has all the features available in version 1.0 plus the following features.
- User Cache API’s can be used by PHP scripts to store PHP objects and variables in shared memory. This way PHP scripts may improve the execution speed by storing processed data in the cache and then using it in subsequent requests instead of re-creating the data on every request.
- WinCache Session Handler can be used to configure PHP to store the session data in shared memory cache. Using shared memory instead of the default file session storage helps improve performance of PHP applications that store large amount of data in session objects. The content of the WinCache session cache is persisted on disk so that it is not lost during IIS worker process recycling.
- File Change Notifications – the entries in the opcode and file caches are now updated as soon as the corresponding PHP files are modified on a file system. This is very useful for PHP applications that store its configuration in PHP files – for example Joomla!. Now the configuration changes for those applications take effect right away instead of a 30 seconds delay (default cache refresh interval).
- Lock/Unlock API’s – these API’s can be used to obtain/release an exclusive lock on a key in the cache.
Install the Windows Cache Extension 1.1 for PHP – RTW
To install the WinCache Extension 1.1 for PHP 5.2 and PHP 5.3, use the download links at the extension’s home page at http://www.iis.net/expand/WinCacheForPhp. Continue Reading »
ruslany on June 30th 2010 in PHP, WinCache
Today IIS team has published a second beta of WinCache 1.1, which has the following new features and improvements :
- File Change Notifications – the entries in the opcode and file caches are now updated as soon as the corresponding PHP files are modified on a file system. This is very useful for PHP applications that store its configuration in PHP files – for example Joomla!. Now the configuration changes for those applications take effect right away instead of a 30 seconds delay (default cache refresh interval);
- Persistent Session Handler – the content of the WinCache session cache is persisted on disk so that it is not lost during IIS worker process recycling.
- Lock/Unlock API’s – these API’s can be used to obtain/release an exclusive lock on a key in the cache.
The beta builds of the extension can be downloaded and installed from the extension home page at: http://www.iis.net/expand/wincacheforphp (look for the “WinCache 1.1 – Beta 2” section there). The source code can be obtained from http://pecl.php.net/package/WinCache/1.1.0beta2. The documentation for the extension can be found on PHP.NET WinCache documentation.
To learn how to change popular PHP applications to use WinCache 1.1 features refer to the following:
This is the beta release and the WinCache team is looking for your feedback on new features and functionality. Use the WinCache Community Forum to ask questions about the extension, report bugs and problems and to suggest features and improvements.
ruslany on April 29th 2010 in PHP, WinCache
The IIS URL Rewrite Module 2.0 – RTW is available for download. IIS URL Rewrite v2.0 is an incremental release that includes all the features from version 1.1, and adds extensibility support and outbound response rewriting. More specifically, v2.0 can be used to:
- Express complex URL rewriting logic by using custom rewrite providers written in .NET.
- Replace the URLs generated by a web application in the response HTML with a more user friendly and search engine friendly equivalent
- Fix up the content of any HTTP response by using regular expression pattern matching.
- Modify HTTP request and response headers and IIS server variables.
For the complete list of features available in this version, refer to Using URL Rewrite Module 2.0.
Install the URL Rewrite 2.0 – RTW
To install the URL Rewrite 2.0, use the download links at the module’s home page at http://www.iis.net/expand/urlrewrite. Note that this is a final, production ready release that is officially supported by Microsoft.
- If a previous version of URL Rewrite Module, such as v1.0 and v1.1, is already installed then it will be upgraded to the v2.0;
- If an RC version of the URL Rewrite Module 2.0 is already installed, then it will be upgraded to RTW version. Continue Reading »
ruslany on March 11th 2010 in URLRewrite
ruslany on March 10th 2010 in FastCGI
ruslany on March 4th 2010 in PHP
The new release of WinCache Extension for PHP - version 1.0.1 – is available for download. This is a servicing release that has fixes for bugs reported in v1.0. In particular the following fixes and changes have been made in this release:
Fixed require_once on PHP5.3. If the files were absolute and similar files were included in different case, require_once was including it twice.
Changed relative path cache to act as resolve path cache. Incremented refcounts under aplist lock. Did comparison using InterlockedCompareExchange.
Fixed crashes which were happening because aplist refcount and opcode cache refcount can get out of sync due to local cache.
Exposed is_local_cache property from ocache_fileinfo and fcache_fileinfo. Stats page will use this to indicate when local opcode data is shown.
Updated the wincache.php to pass chart data on query string to ensure that the charts show the same data that is displayed in tables
Updated the wincache.php to show whether information about a global or local cache instance is being displayed
Changed variable names and comments to indicate rplist is resolve path cache and not just relative path cache
Changed wincache.php to use resolve_path instead of relative_path
The new release is available for download from the extension’s home page at: http://www.iis.net/expand/wincacheforphp. The source code for the extension is available on PHP PECL page here: http://pecl.php.net/package/WinCache/1.0.1. The documenation for the extension can be found at http://www.php.net/manual/en/book.wincache.php.
ruslany on January 26th 2010 in PHP