CSS and JS files not being served correctly by IIS

If you receive a warning that that CSS and/or JS files are being ignored due to incorrect mime type. It could be IIS is not serving static content. Another indication is a blank content type field for static content in the IE developer tools network tab.

To resolve the issue:

  1. Go to Control Panel > Programs and Features
  2. Click Turn Windows features on or off
  3. Expand World Wide Web Services > Common HTTP Features
  4. Tick Static Content
  5. Click OK

Another cause is CSS and JS mime types being incorrect registered on the IIS server.  To check open regedit, expand HKEY_CLASSES_ROOT, find .css and check/change the Content Type value to text/css. Repeat for .js where the Content Type value should be text/plain.

Setting permissions for Application Pool Identity

IIS 7.5+ runs application pools using an Application Pool Identity rather than NETWORK SERVICE. To allow files to be created/modified you may need to change file permissions.

1. Open Windows Explorer
2. Select a file or directory.
3. Right click the file and select “Properties”
4. Select the “Security” tab
5. Click the “Edit” and then “Add” button
6. Click the “Locations” button and make sure you select the local machine. (Not the Windows domain if the server belongs to one.)
7. Enter “IIS AppPool\DefaultAppPool” in the “Enter the object names to select:” text box. (Don’t forget to change “DefaultAppPool” here to whatever you named your application pool.)
8. Click the “Check Names” button and click “OK”.

Note: Depending on IIS configuration you may need to add permissions for the application pool itself. Repeat the above steps but change AppPool\DefaultAppPool to AppPool\MyApplicationPool where the application pool is called MyApplicationPool

Sitecore generating Overlapping onDeckSearchers=x warnings in Solr logs

I’ve recently had an issue where every 10 minuets or so a entry would appear in the Solr logs. This was only an issue for the analytics core. After reading various articles and try different Solr configurations I failed to resolve the problem.

However after a chat with Sitecore Support the issue was resolved by a quick change to our Sitecore environment. Our production environment consists of four separate Sitecore instances, two delivery, one authoring and one processing server. By default Sitecore uses a Timed Index Refresh Strategy to update Solr’s analytics core. By having four environments pointing to the same Solr instance, the analytics core was being updated four times simultaneously.

When a processing server is being used only that should update the analytics core. In an environment without a processing server it would the possibility of authoring server.

To resolve the issue the processing server was left with the default Timed Index Refresh Strategy. Automatic updating of the analytics was disabled on the remaining three environments by changing the strategy to manual.

The strategies are set in the Sitecore.ContentSearch.Solr.Index.Analytics.config file. The default is:

<strategies hint="list:AddStrategy">
   <timed type="Sitecore.ContentSearch.Maintenance.Strategies.TimedIndexRefreshStrategy, Sitecore.ContentSearch">
      <param desc="interval">00:01:00</param>
   </timed>
</strategies>

To use a manual strategy remove the above from the config file and add:

<strategies hint="list:AddStrategy">
   <strategy ref="contentSearch/indexConfigurations/indexUpdateStrategies/manual" />
</strategies>

Rather than updating the config file a better solution would be creating a patch file. This way if the config file is replaced during an upgrade the config change will still be applied.

Remove cached credentials from Windows

The utility to delete cached credentials is hard to find. It stores both certificate data and also user passwords.

Open a command prompt, or enter the following in the run command:

rundll32.exe keymgr.dll,KRShowKeyMgr

Windows 7 makes this easier by creating an icon in the control panel called “Credential manager”

Remove One Drive from Explorer in Windows 10

Even if you disable One Drive it will still show in Explorer. The following registry change will remove One Drive from Explorer

  1. Open regedit
  2. Navigate to HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}
  3. Change the DWORD value of System.IsPinnedToNameSpaceTree too 0
  4. You may need to logout to see the change.

OctoPack NuGet versioning order

NuGet packages have version numbers. When you use OctoPack, the NuGet package version number will come from (in order of priority):

  1. The command line, if you pass /p:OctoPackPackageVersion= as an MSBuild parameter when building your project.
  2. If the [assembly: FileVersion] is the same as the assembly: AssemblyInformationalVersion, then we’ll use the [assembly: AssemblyVersion] attribute in your AssemblyInfo.cs file
  3. Otherwise we take the [assembly: AssemblyInformationalVersion].

View Two Websites Side-By-Side With Safari Split View in iOS 10

First split screen only works in landscape mode, not portrait. There three ways to achieve this. 

Open a new tab is split screen

Tap and hold the the tab management icon in the upper right. You will see an option to Open Split View. Tap it to create a blank Safari window. 

Open a link in split view

Tap and hold a link on a web page and select Open in Split View

Drag a tab to open in Split View. 

Tap and hold a tab, then drag it to the side of the screen you want it to open in. 

Remove Edge Extensions Using Powershell

Sometimes the extension Edge become ‘stuck’. They don’t work, Windows Store will attempt to reinstall, but they get stuck in a cycle. Using PowerShell the extension can be removed completely, then reinstalled, which should fix most problems. The below example will remove LastPass.

 

  1. Start PowerShell as an admin
  2. Enter Get-AppxPackage *lastpass* | Remove-AppxPackage