Problem solving at work

Source: Internet
Author: User

The company's BP & IT project team began to develop BP & IT software since its establishment last month. This month, I started to test my tragedy and found that he did not support ie11on my computer. IT has not been solved for more than half a month.

Let's first analyze the reason home page login page normal browsing http://hr.bingjun.cc/

Web site rendering http://hr.bingjun.cc/(F (LOGIN)/Default. aspx

Click any link on any webpage

Key Value
Referer http://hr.bingjun.cc/MyTask/MyTaskPage.aspx

302 http://hr.bingjun.cc/

 

Http://hr.bingjun.cc/(F (rows)/Default. aspx

We can easily find out from the analysis. This is a URL link using the Cookie-free mode, and the F header can determine that our BP & IT project team uses Forms verification.

The jump page is a page with http://hr.bingjun.cc/mytask/mytaskpage.aspxwithout a Cookie-free URL. This leads to Cookie loss. Let alone the Session and login status that relies on cookies.

Why didn't CookieURL be included after the page Jump? I think their code didn't use the server path "~ /", Because only the server path ASP. NET is used to automatically provide CookieUrl

Ask the BP & IT project team why I cannot use the internal website on IE11 immediately after I find IT (answer my question is Microsoft's BUG)

The BUG that can cause this problem based on my knowledge should be ASP. NET's identification of IE11 as a Cookie-free browser.

In this case, there are many solutions starting from the server level.

We know that ASP. NET identifies whether the browser is non-Cookie-free and is identified by a library. We can also add something to this library.

C: \ Windows \ Microsoft. NET \ Framework \ v4.0.30319 \ Config \ Browsers

Open this directory and you will find that many of the following files are correct. This is ASP. NET used to identify the library of the browser. Open ie. browser.

Add a browser configuration Node

 

<browser id="IE11" parentID="Mozilla">        <identification>          <userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />          <userAgent nonMatch="IEMobile" />        </identification>        <capture>        <userAgent match="Trident/(?'layoutVersion'\d+)" />       </capture>       <capabilities>         <capability name="browser"              value="IE" />         <capability name="layoutEngine"         value="Trident" />         <capability name="layoutEngineVersion"  value="${layoutVersion}" />         <capability name="extra"                value="${extra}" />         <capability name="isColor"              value="true" />         <capability name="letters"              value="${letters}" />         <capability name="majorversion"         value="${major}" />         <capability name="minorversion"         value="${minor}" />         <capability name="screenBitDepth"       value="8" />         <capability name="type"                 value="IE${major}" />         <capability name="version"              value="${version}" />       </capabilities>     </browser>

In this wayAll sites in v4.0.30319 can solve this problem.

 

2 BP & IT also said they have found a solution to changing the configuration file on the server. They do not dare to use too many websites on the server for fear of crash ~~ I don't know how to say them.

I don't know if all ASP. NET Config configuration files can be appended to or overwritten globally? (PS: global configuration is used in the Config in the above path)

Since it can be overwritten, it is okay to create a new browser file in the project. As for how to create a new browser file, I don't need to talk about it. (the images in the blog Park must be external links, or I need to add a few more images. steps are in)

3. If this is not easy or you are afraid that similar browsers will not be recognized in the future, modify the cookieless value.

Open web. config to add or modify nodes under System. web

<sessionState mode="InProc" cookieless="UseUri" customProvider="DefaultSessionProvider">      <providers>        <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />      </providers>    </sessionState>    <authentication mode="Forms">      <forms cookieless="UseUri" loginUrl="~/Account/Login" timeout="2880" defaultUrl="~/" />    </authentication>

Configure cookieless = "UseCookies". In this case, all browsers use browser cookies instead of urlcookies regardless of their support for cookies. (have you ever seen browsers that do not support cookies? PS: I have seen it)

I think it's almost the same now.

PS: IE11 appears -- _ doPostBack undefined is also a problem that the browser does not recognize. However, it does not think that the browser does not recognize cookies, but that it does not support Javascript. In the first two methods, the focus is on configuration. add the following two sentences

<capability name="javascript"           value="true" />  <capability name="cookies"              value="true" />

(PS: Have you ever seen browsers that do not support Javascript? I have never met. This is Microsoft! By default, Chengdu does not support writing configuration files)

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.