Recently we migrated an EPiServer 5 website to CMS 6 R2. Most things went well, except Page Files stopped working - we couldn't browse to any document in page files despite the VPP being there. After some research, the conclusion was that the <location> element for page files was missing in Web.Config.
Just search for <location path="Documents"> or <location path="Global"> in Web.Config and add this section for Page Files before:
<location path="PageFiles">
<system.web>
<httpHandlers>
<add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="true" />
<add path="*" verb="*" type="EPiServer.Web.StaticFileHandler, EPiServer" validate="true" />
</httpHandlers>
</system.web>
<staticFile expirationTime="-1.0:0:0" />
<system.webServer>
<handlers>
<add name="webresources" path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" />
<add name="wildcard" path="*" verb="*" type="EPiServer.Web.StaticFileHandler, EPiServer" />
</handlers>
</system.webServer>
</location>
Unfortunately there still are times when you need to embed an iframe. Most of the time you would want to assign an automatic height to the iframe. It's not very easy, but it's definitely doable if you meet a couple of requirements.
Requirements needed for auto iframe height
The page calling the iframe and the iframed page should have the:
- Same host
- Same protocol
- Same port
This means:
- a page at www.domain1.com can't call a page on www.domain2.com
- a page at domain1.com can call a page on domain1.com or on a sub domain, xx.domain1.com
For this to work, you also need to add this code snippet (in <script>) to both pages, preferably in the <head> section:
document.domain = /(\w+)(.\w+)?$/.exec(location.hostname)[0];
This code snippet tells the browser the default domain (host), which need to be the same according to the requirements above.
Common error code
This is the error you get in Chrome if you make an illegal iframe call:
Unsafe JavaScript attempt to access frame with URL http://domain1.com
from frame with URL http://otherdomain.com.
Domains, protocols and ports must match.
Now you know the solution.
Auto iframe script
Here's a working auto iframe height script you can use.
It's even non jQuery (even though it says it's jQuery).
So maybe you've decided it's time to run a custom ROM on your Android phone? Well, it might be a really good decision! Here's a tutorial on how to make the process a bit easier.
First of all, rooting your phone is much easier today than it was. Seriously. In theory, you just have to grab the latest AAHK (Advanced Ace Hack Kit), make sure you meet the requirements and press Go. Now this absolutely might work for some, but for many of us it will not. Before you proceed, also know that rooting your phone will void its warranty. If you're lucky that won't matter if the phone must go on service, but if you're unlucky, you're stranded.
Now, onwards. Here's what you should do if you want to root your phone and install a custom ROM!
Prepare your phone
First, plugin your phone to your computer's USB:
- Make sure the mode is set to Charge only.
- Also, you need to turn on USB debugging:
Menu -> Settings ->Applications -> Development -> Check USB Debugging
It also helps having a brand new micro SD card. There's been problems with well used micro SD cards and AAHK, but it's not entirely sure you'll have problems with your SD card. Just follow the instructions below and let's see what happens for you. Also, have a look at the Problem solving section below.
Download and run AAHK
- Download the latest AAHK, unzip.
- Run hack-ace.cmd (as Administrator if you're in Windows).
Also, read effen-manual.html (it's located in the root).
- You will be asked for the pass key. Take a look in the file /tools/txt/CAJUN.TXT and copy the contents of that file to the command prompt.
- Now you should see this screen:

- The toggle flash method should be hbootPD98IMG. If it isn't, press 't' and then enter.
- Now it's time for the fun! Choose 1 Hack Ace and enter. Watch the magic happen :-) This will take a while, probably 5-10 minutes.
Download and Install Custom ROM
After the rooting is complete, you should now have a fully working rooted Android phone. Next it's time to install a custom ROM. This is easy.
Download ROM Manager from Play Store. Open the app and choose Flash ClockworkMod Recovery the first thing you do.

Now you can choose to either do this the easiest way or the manual way. The easiest way includes buying ROM Manager Premium and letting it download and install everything you need. The manual way is cheaper and works well too.
The ROM Manager Premium way:
- In ROM Manager, choose Download ROM and find your ROM of choice.
- Make sure you tick Backup Existing ROM, Wipe Data and Cache, Wipe Dalvik Cache and proceed.
- Watch and enjoy. The process will take a while and once it's done you should run your custom ROM of choice!
The manual way:
- Figure out which custom ROM you want, there's a great list of custom ROMs for Desire HD here. Download.
- Rename the downloaded file's name to update.zip and place it in the root of your SD card.
- In ROM Manager, choose Install ROM from SD Card, tap update.zip.
Make sure you tick Backup Existing ROM, Wipe Data and Cache, Wipe Dalvik Cache and proceed.
- Let the phone work for a while and then you'll have the custom ROM installed!
Problem solving
When AAHK does its magic, it might get stuck. You might encounter error messages like:
/sdcard/PD98IMG.zip no such file or directory
and similar. That should be nothing to worry about. AAHK has its own PD98IMG.zip and everything will be fine.
However you might have to wait a while for the "sending zip" process to complete. If it doesn't within a couple of minutes, you have to try three things:
- First, make sure you set flash method to hbootPD98img
- Try another USB port or USB cable
- If that didn't work, buy a new micro SD card
And restart the process from step 2.
Make Add-ins show up in Visual Studio 2010.
Have you installed Visual Studio Add-ins recently but they don't show up anywhere? Well, there's a solution!
I recently ran into this problem where the add-in Git Extensions was installed and did work for earlier Visual Studio versions - but Git didn't show up in the toolbar in Visual Studio 2010.
Some Googling and there still wasn't an answer. Until now. It turns out the Visual Studio Add-Ins (Git Extensions in this case) weren't allowed to load.
Here's how to fix it:
- Go to Tools->Options->Environment and choose Add-in/Macros Security
- Make sure Allow Add-in components to load is ticked and press Ok
- Restart Visual Studio and Git should now be visible in the toolbar!
