Archive
Workarround: IE11 changing download file extension to .zip
At ClipFlair Gallery, apart from opening a ClipFlair activity in ClipFlair Studio, downloading of an activity (.clipflair) file is also supported.
However, because the component serialization file format of ClipFlair Studio is XML plus media assets packed in .zip archive (with nesting allowed, where components and whole activities can be placed in other activities), Internet Explorer 11 (and probably other browsers too) was downloading .clipflair files as .zip (changing their file extension).
At first, I thought that occured because I was using MIME type “application/zip” at the IIS web server/site settings for that file extension. So then I tried to change it to “application/octet-stream” hoping that one would be treated as an “opaque” data stream.
However, eventually I ended up setting a custom MIME type “application/clipflair” for the file extension “.clipflair”, because even with “application/octet-stream” (as with the “application/zip” that I had before), IE11 was still saving the .clipflair file as .zip (obviously detecting the zip content in the download stream).
<?xml version=”1.0″?>
<configuration><system.webServer>
<directoryBrowse enabled=”true” showFlags=”Size, Extension”/>
<defaultDocument>
<files>
<clear/>
<add value=”index.html”/>
<add value=”Default.aspx”/>
<add value=”Default.html”/>
</files>
</defaultDocument><caching>
<profiles>
<add extension=”.log”
policy=”CacheUntilChange”
kernelCachePolicy=”CacheUntilChange”/>
</profiles>
</caching><staticContent>
<mimeMap fileExtension=”.log” mimeType=”text/plain”/>
<mimeMap fileExtension=”.clipflair” mimeType=”application/clipflair”/>
<mimeMap fileExtension=”.dzi” mimeType=”text/xml”/>
<mimeMap fileExtension=”.dzc” mimeType=”text/xml”/>
<mimeMap fileExtension=”.cxml” mimeType=”text/xml”/>
</staticContent></system.webServer>
<system.web>
<compilation debug=”true” targetFramework=”4.0.3″/>
</system.web></configuration>
HowTo: Use WordPress Permalinks on IIS
at http://zachis.it/blog/7-dangers-of-using-windows-server-on-a-wordpress-installation/
the thing that guy says about Permalinks isn’t accurate at all (not that the other things that he says are any accurate that is). WordPress Codex have documentation on how to configure URL rewriting in web.config that is necessery for Permalinks to work in IIS.
e.g. at http://ClipFlair.net, if you press the "about" icon you’re taken to a WordPress site that runs on IIS and uses permalinks fine and hides the index.php too from the URL
in its web.config I have the following:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer><httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/index.php?error=404" responseMode="ExecuteURL" />
</httpErrors><!– Needed for WordPress Permalinks –>
<rewrite>
<rules><rule name="Main Rule" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<!– <action type="Rewrite" url="index.php/{R:0}" /> –>
<action type="Rewrite" url="index.php" />
</rule></rules>
</rewrite><defaultDocument>
<files>
<clear />
<add value="index.html" />
<add value="index.php" />
<add value="default.aspx" />
</files>
</defaultDocument></system.webServer>
</configuration>
HowTo: enable big file uploads at MojoPortal on IIS
Just found in my backups a batch file for enabling big uploads to MojoPortal running on IIS:
%windir%\system32\inetsrv\appcmd
set config "Default Web Site/portal"
-section:requestFiltering
-requestLimits.maxAllowedContentLength:104857600
-commitpath:apphost
The quoted command above needs to be in a single line and obviously you have to replace “Default Web Site/portal” with your site’s virtual folder “path” as shown in IIS Manager’s tree view.
Probably can configure that via web.config in ASP.net websites, but if nothing else works can try this too.
Set default document for IIS via web.config at Silverlight Web project
When you tell the Visual Studio IDE to generate a web project (instead of just using an autogenerated page) for a Silverlight project, it creates a project named SilverlightAppName.Web with a SilverlightAppNameTestPage.aspx (ASP.net) and an SilverlightAppNameTestPage.html. Either one can be served from a web server (obviously the .aspx one from IIS or any web server that supports ASP.net at the server-side) to run the Silverlight app in the browser, or for debugging from within Visual Studio (with the included test web server [Cassini] or IIS).
Note that at that Web project’s Properties, there’s a tab Silverlight applications, where Silverlight apps hosted by that Web project are listed. If you add more there, Visual Studio will generate respective pages for them, in the pattern mentioned above.
By right clicking one of those two pages you can select “Set as Start Page” to set the default page that “Start” or “Start without debugging” uses. However that setting isn’t replicated to the web.config file automatically so that after publishing (by right clicking the web project and selecting “Publish”) that Web project to say a subfolder under “wwwroot” of IIS (or deeper in the web folders hierarchy).
If it was doing so, you would be able to just visit that folder and have IIS (or any other web server that supports the web.config scheme) serve the wanted page as the default document (instead of showing a can’t browse folder error or displaying the folder contents if Directory Browsing has been enabled at IIS console for that folder or some ancestor of it [and has not been overridden to disable at that folder])
However, you can edit web.config yourself to achieve that, like below:
<?xml version="1.0"?> <!-- For more information on how to configure your ASP.NET application,
please visit http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="SilverlightAppNameTestPage.aspx" />
</files>
</defaultDocument>
</system.webServer>
</configuration>