Blocking access to mobile view in SharePoint


Recently received a request from the cx where he wanted that whenever anyone tries to browse a SP URL with ?mobile=1 appended it should fallback to SP desktop site only i.e. should not take the user to mobile version of the site. As we all know there are 3 ways to block the mobile redirection in SP but all of these fail when a user directly adds ?mobile=1 query in the URL of the site.

 

1. In web.config of the web application add the following lines under configuration/system.web section

  • <browserCaps>
    <result type=”System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”/>
    <filter>isMobileDevice=false</filter>
    </browserCaps>

 

2. Modify the compat.browser of the web application found under C:\inetpub\wwwroot\wss\VirtualDirectories\<webapp>\App_Browsers

  • Code to change for each user agent 
    • <capability name=”isMobileDevice” value=”false” />

3.

Disable-SPFeature -Identity MobilityRedirect -Url http://yoursite 

 

Note: None of the above method really block any user from directly accessing the mobile view of the site by simply appending ?mobile=1 in the URL

 

# To completely block the access we need to do the following:

 

# Install IIS URL rewriter module.

# add the below lines in your web.config of web application, just under the defaultdocuments tag

<rewrite>
            <rules>
                <rule name="test" patternSyntax="Wildcard" stopProcessing="true">
                    <match url="*" />
                    <conditions trackAllCaptures="true">
                        <add input="{QUERY_STRING}" pattern="*mobile=1" />
                    </conditions>
                    <action type="Redirect" url="{R:1}" appendQueryString="false" logRewrittenUrl="true" redirectType="Found" />
                </rule>
            </rules>
        </rewrite>
        <defaultDocument enabled="false">
            <files>
                <remove value="default.aspx" />
            </files>

# same can be configured through GUI of URL rewriter as well

 

 

 

Comments (0)

Skip to main content