When the Server Application Unavailabl-zt is installed on the Asp.net 2.0 Server

Source: Internet
Author: User

Originally, the server runs asp.net Framework Version 1.1, and the site IIS runs normally, but some customers need to install it today.. NET 2.0. After installing version 2.0, the prompt "Server Application Unavailable" appears when the Server is running. This is puzzling. Check the relevant documentation and finally have a solution. net Framework 1.1 and.. net Framework 2.0 conflict.

The error message is as follows:
Server Application Unavailable
The web application you are attempting to access on this web server is currently unavailable. Please hit the "Refresh" button in your web browser to retry your request.
Administrator Note: An error message detailing the cause of this specific request failure can be found in the application event log of the web server. please review this log entry to discover what caused this error to occur.

View Event Viewer. The error is:

Error: Failed to execute request because the App-Domain cocould not be created. Error: 0x80070005 Access is denied.

Solution: Under the virtual directory of the web sites, Configure Permissions, which should include:
ASP. NET
IWAM_MachineName
Local_Service
Network_Service
System
The permission must be set to write & read.
After configuration, everything runs normally.

There is another possibility:

Put it on the virtual host to be purchased (I asked him to install it during the trial period. net 2.0) or not. They should be experts. They always thought there was a problem with their own release method. They sought people and went crazy about the post. Finally, they realized that I had installed it. net framework 1.1 and 2.0, the iis application pool configuration is incorrect. The solution is as follows:

Can your. net 2.0 and 1.1 run securely and correctly on the same computer? Be careful about the Server Application Unavailable error. The answer is certainly yes. However, if no processing is performed, a problem may occur by default!

Be careful when installing and running. net 1.1 and. net 2.0 on the same computer!

Does your project occasionally encounter Server Application Unavailable errors? Or this error is reported continuously!

Today, my friend upgraded the project from 1.1 to 2.0 and released it to the company's server with windows 2003 installed. As a result, the project in 2.0 never runs successfully. It even caused an error in. net Framework 1.1-based web programs serving the entire company on the server. He feels very strange. He runs well on his computer. How can he solve the problem once he reaches the server? The process for releasing the 2.0 web program is as follows:

1. Create a directory on the server and copy the files of all published Web programs to the new directory.

2. Create a new virtual directory on the server's IIS and configure it as an application that can execute scripts (the process is the same as that of the. net Framework 1.1 program .) Then, configure the. net Framework of this virtual directory to 2.0.
After success, access to the newly configured program will receive the preceding Server Application Unavailable error.

 

Then I asked for help. After carefully reading the IIS Help documentation, I found that this error was caused by the IIS6 application isolation mechanism. The default application isolation mechanism of IIS is called "Working Process Isolation Mode". In this mode, an application is divided into multiple groups, each of which is an "Application pool ", each application pool is isolated from each other. The benefits of isolation are security, stability, and so on. Each application pool in IIS is managed by a "worker process", that is, "W3wp.exe ". If you run multiple applications in the application pool, we can see multiple w3wp.exe. The created virtual directories are directed to the "ultultapp" of IIS6 by default.

Pool "worker process.

The reason for the above error is :.. net Framework 2.0 program and. net Framework1.1 (or 1.0) programs are put into the same application pool (ultapppool pool by default), that is, managed by the same worker process: w3wp.exe, however, a single working process cannot manage different programs (or different versions of programs) at the same time. If you first access. net framework 1.1 page, the worker first loads and manages the assembly of Version 1.1. net framework 2.0 web Application page, the Server Application Unavailable error is returned. In contrast, if w3wp.exe in the development application pool has accessed the 2.0 web application before it is started (the application assembly has been loaded at this time. net Framework 1.1 Web assembly). When you access the Web application page of 1.0 or, a Chinese prompt such as "the server application cannot be used" will also appear. (You can use w3wp.exe to perform the test .)

My friend didn't see this error on his development machine because he was developing based on. net framework 2.0 project, always only access this 2.0 web program, and this has never accessed other web programs. There are already 1.0 projects on a friend's server, and some people have been using them all the time. This error has never been encountered before. In fact, most people only access the project being developed when developing a project. It is very likely that this problem has been ignored, but an error occurred during the release, making it messy.

Solution: Create an application pool in IIS and select your application pool. net framework 2.0 virtual directory, click "properties"-> select the application pool you just created in the "application pool", and click "OK ".

If your computer is mainly used to learn, develop, and test web programs, you can create an application pool similar to "dotnet2.0, all new 2.0 virtual directories will point to this application pool.

Add:

This is an official explanation at Microsoft:

This problem occurs because the process model User Account (ASPNET by default) does not have the correct user permissions for the required system files and folders to run the ASP. NET workflow.

To solve this problem, verify that the ASPNET account has the following correct user permissions: • % windir % \ Microsoft. NET \ Framework \ Version \ Temporary ASP. NET file: full control

• % Windir % \ Temp: full control
• Application Folder: Read
• % Installroot % level (for example, % windir % \ Microsoft. Net \ Framework \ Version): Read
• % Windir % \ Assembly: Read

 

Note: This is the Global Assembly cache. You cannot directly use Windows Resource Manager to edit the ACL of this folder. Open the command window and run the following command:
Cacls % windir % \ assembly/e/t/p domain \ useraccount: R

Before using Windows Resource Manager, run the following command to cancel registration of Shfusion. dll:
Regsvr32-u shfusion. dll.
After configuring user permissions in Windows Resource Manager, run the following command to re-register Shfusion. dll:
Regsvr32 shfusion. dll
• The site root directory (for example, % root % \ Inetpub \ Wwwroot) or the default site pointing path: Read
• % Windir % \ System32: Read
(Generally, the ASPNET account has been granted the user permissions of user group members .)

Related Article

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.