0

I've setup a SharePoint 2013 farm that has two web applications, one for the main site collections for the business (intranet), and another that holds the user profile service (intranetpersonal). Both web applications are using claims based authentication and in an attempt to rectify this issue I've already setup the intranetpersonal web application to allow anonymous access to all sites.

Everything works fine in Internet Explorer (feels weird saying that in a web context, heh) however whenever I view a newsfeed, staff directory, or anything that accesses the user profile service Chrome isn't loading the images. I've checked the console log for Chrome and it looks like the following error is the cause:

Resource interpreted as Image but transferred with MIME type text/css: "http://intranet/_layouts/15/1033/styles/Themable/corev15.css?rev=BdxJNFd%2FTPOed3Z8IKEJ9A%3D%3D". init.js?rev=zwpf9CD1m7am6imImmQglQ%3D%3D:1 GET http://intranetpersonal/User%20Photos/Profile%20Pictures/testinguser_MThumb.jpg 

401 (Unauthorized)

Is there a way to rectify this issue, or am I up the creek without a paddle having to only support Internet Explorer within the organization (shudder).

*EDIT*

It turns out this is a Google Chrome bug which is already addressed (it's resolved in the Canary build so it should make it to production in the near future). For future visitors I would advise looking at Robert Lindgren's answer as that is the typical resolutuion to this kind of an issue.

4
  • Does is prompt you to enter the username and password when you try to access the "intranet" site with images from "intranetpersonal"? Commented Oct 22, 2013 at 3:46
  • @KarthikMurugesan No, it just fails to load
    – Michael A
    Commented Oct 22, 2013 at 6:23
  • Can you try logging into intranetpersonal site with the same network credentials and bring up the intranet site? Commented Oct 22, 2013 at 13:16
  • @KarthikMurugesan Users are automatically authenticated, so I can only test this so much. The image does however work if they browse to the users profile first, and then navigate to the page. Sometimes they will load, sometimes some images load and others throw the error.
    – Michael A
    Commented Oct 23, 2013 at 2:23

4 Answers 4

2
+50

I believe this is a bug in Chrome, we are experiencing it in our internal network on other sites as well. The issue is a regression in version 30 where authentication is not passed and is set to be fixed in version 31.

You can verify this by navigating to the profile picture directly and it'll load, but hitting it through a secondary means will fail.

https://code.google.com/p/chromium/issues/detail?id=303046

3
  • Wow, well that explains it. I tried the canary build - and everything works. I guess I'll wait for this to make it to production! Thank-you! Do you mind if I award you the bounty but give the answer to Robert Lindgren as his will be more appropriate for future visitors (since this bug will be temporary)
    – Michael A
    Commented Oct 28, 2013 at 22:49
  • Actually, if you can disregard - I added an edit to my question instead!
    – Michael A
    Commented Oct 28, 2013 at 22:51
  • Do what ever you feel is fair, I'm happy to have the answer, the bounty, both, or none. The important thing is you got your issue resolved. Commented Oct 28, 2013 at 22:52
2

This is due to cross domain retrieval of photos not being allowed

Run this in powershell:

asnp Microsoft.SharePoint.PowerShell
$wa = Get-SPWebApplication http://intranet.contoso.com
$wa.CrossDomainPhotosEnabled = $true
$wa.Update()

Works like a charm I Chrome after this in my environments

Source: http://www.wictorwilen.se/sharepoint-2013-enabling-cross-domain-profile-pictures

9
  • I thought this also, but I've enabled this on both web applications and it hasn't resolved the issue (sorry I should have included this in my original posting)
    – Michael A
    Commented Oct 24, 2013 at 6:04
  • Strange, my issue was exactly the same as yours, and to set this property on the non-mysite webapp solved the issue Commented Oct 24, 2013 at 6:20
  • Are you sure the command has been set? The link in your chrome log states otherwise, it should be pointing to a page in the layouts-folder if this was done correctly! Commented Oct 24, 2013 at 16:21
  • To be honest I hadn't considered that as I wasn't sure what output to expect. I imagine this is something to do with my aRecord... I'm not too sure how to work around that - is there a way beyond powershell to set this? Could I do it in .net?
    – Michael A
    Commented Oct 25, 2013 at 13:15
  • I guess setting the property on your portal web via .net should also be possible Commented Oct 25, 2013 at 18:47
1

I think it might have todo with Static Content role service within ii7 rather than sharepoint, Its where the error generates from I presume!

A static content Web server is the most basic configuration that provides support for HTML Web sites. You can use a static content Web server to host internal or external Web sites. When you install IIS 7, the default installation provides all the IIS modules required to support a static content Web server, including the ability to serve static HTML files, documents, and images. IIS 7 also provides support for default document, directory browsing, logging, and Anonymous authentication for the static content server.

1.Click Start, point to Administrative Tools, and then click Server Manager.

2.In Roles Summary, click Add Roles.

3.In the Add Roles Wizard, on the Before You Begin page, click Next.

4.On the Select Server Roles page, select Web Server (IIS), and then click Next.

Note If an informational dialog box notifies you of required dependencies, click Add Required Role Services to accept installation of the dependencies.

5.On the Web Server (IIS) page, click Next.

6.On the Select Role Services page, note the preselected role services that are installed by default, and then click Install.

Note You only have to install the IIS 7 default role services for a static content Web server.

7.On the Summary of Features to Install page, confirm your selections, and then click Install.

8.On the Installation Results page, confirm that your installation of the Web Server (IIS) role and required role services completed successfully, and then click Close.

more detail on it here:

http://technet.microsoft.com/en-us/library/cc627313.aspx

for iis 8.5 on 2012 goto Uninstall IIS 8.5 using the Server Manager on the link below: (i know it says uninstalling but you can add features aswell from that location!)

http://www.iis.net/learn/install/installing-iis-85/installing-iis-85-on-windows-server-2012-r2

enter image description here

-1
  • Go to the Start menu > Search.
  • Search your computer for the following file: expand.exe
  • If you're able to locate the file on your computer, move it to the following directory: C:\Windows\system32. You can also copy the file from Windows installation CDs/DVDs, if you're unable to find it on your computer.

Once you've copied the file to the directory, try installing Google Chrome again.

If you're still having problems, continue to the next step.

Step 2: Change the location of your temporary folder

  • Go to the Start menu > Run.
  • Enter the following in the text field: C:\
  • Click OK.
  • Create a temporary folder by going to File > New > Folder. Name the folder 'test.'
  • Go back to the Start menu > Run.
  • Enter the following in the text field: cmd.exe
  • Click OK.

Get free tech support for chrome browser @1-800-935-0537

1
  • What it is about?
    – gdbdable
    Commented Mar 25, 2019 at 9:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.