Today, my colleague's computer's IIS server suddenly experienced a problem. Let me help you. I checked it out. His system is Windows XP SP2 and the IIS version is 5.1, A fault occurs when you enter http: // 127.0.0.1 in the address bar of your browser, and an error message "HTTP 500 internal server error" appears.
I checked the cause of "HTTP 500 internal server error" on the Internet and tried many methods on the Internet, but none of them worked, some netizens even come to the conclusion that "only reinstalling the system can solve the problem". After many experiments, I finally came up with a real solution. The solution is as follows:
1. Run-> cmd-> input Net start MSDTC. An error message is displayed, indicating that the service cannot be started. 2. Delete the keys in the registry:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ MSDTC
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MSDTC
Hkey_classes_root \ CID 3. Stop MSDTC Service: net stop MSDTC 4. Uninstall MSDTC Service: MSDTC-uninstall
5. reinstall the MSDTC Service: MSDTC-install 6. restart the computer.
7. Start the service: Net start MSDTC
8. Reset the iis iwam account password. (In User Management in Computer Management), such:
9. Synchronize the password of iwam_myserver in IIS metabase, in cmd: C: \ inetput \ adminscripts \ adsutil set w3svc/wamuserpass "yourpassword"
10. Synchronize COM + applications Program Iwam_myserver password used, in cmd: C: \ inetput \ adminscripts \ synciwam. vbs-V
11. Enter http: // 127.0.0.1 in the address bar of your browser. You can find that IIS is working properly. For details, see:
Appendix: the IWAM account is a built-in account automatically created by the system when iis5 is installed. It is mainly used to start Internet Information Services for applications outside the process. The name of the IWAM account varies depending on the NetBIOS name of each computer. The common format is iwam_machine, it is composed of the prefix "IWAM", the connection line "_", and the computer's NetBIOS name. My computer's NetBIOS name is myserver, so the IWAM account name on my computer is iwam_myserver, which is very similar to the way in which the IIS Anonymous Account isur_machine is named.
after the IWAM account is created, it is used by three Parties: Active Directory, IIS metabase database, and COM + application. The account and password are respectively saved by three Parties, the operating system is responsible for synchronizing the IWAM password stored by the three parties. We can rest assured that the work undertaken by the operating system does not have to worry about errors, but we do not know whether it is a bug or another reason. The system sometimes fails to synchronize the password of the IWAM account, the password used by the third-party IWAM account is inconsistent. When IIS or COM + applications use the wrong IWAM password to log on to the system and start IIS Out-of-process pooled applications, the system rejects this request due to a wrong password, this causes IIS Out-of-process pooled applications to fail to start, that is, the "cannot run server {3d14228d-fbe1-11d0-995d-00c04fd919c1}" we see in the id10004 error event (here {token} is the key of IIS Out-of-process pooled applications ), it cannot be transferred to the iis5 application. An internal HTTP 500 error occurs.