IIS站点调试时,出现500报错如何处理。

1.概述

系统环境
windows 宝塔安装的IIS PHP环境站点
其他 asp 站点都正常,就新加的一个PHP站点出现500 报错。

2.处理方法

QQ截图20230509095937.png

(IIS)中,应用程序池是用于承载Web应用程序的进程。每个应用程序池都有一个进程模型,它定义了如何管理该进程。在进程模型区域中,标识参数指定了用于运行应用程序池进程的Windows帐户。

下面是三个账户的权限说明,来源Chatgpt

LocalSystem

将标识参数的值修改为LocalSystem会将应用程序池的进程与操作系统的LocalSystem帐户关联起来。这意味着该进程将以系统级别权限运行,可以访问操作系统中的所有资源。这样做的好处是,如果Web应用程序需要访问操作系统中的某些资源,例如注册表、计划任务等,那么这些资源将会更容易地被访问到。但是,这样做也会带来一定的安全风险,因为应用程序池进程具有系统级别的权限,可能导致滥用权限的风险。因此,需要权衡安全和可用性之间的平衡,根据具体情况来确定是否使用LocalSystem帐户。

networkservice

将应用程序池的标识参数设置为“NetworkService”,会使用一个内置的Windows帐户来运行应用程序池的进程。这个帐户具有本地计算机上的一些权限,可以访问某些资源,例如网络资源和一些本地资源。

将应用程序池的标识参数设置为“NetworkService”可以提高应用程序池的安全性,因为该帐户不是系统级别的帐户,可以限制应用程序池进程对系统资源的访问权限。此外,这种设置可以避免使用LocalSystem帐户带来的一些安全风险。

ApplicationPoolIdentity

将应用程序池的标识参数设置为“ApplicationPoolIdentity”,会使用一个虚拟帐户来运行应用程序池的进程。这个虚拟帐户的名称与应用程序池的名称相同,并且只能访问该应用程序池的资源。这种设置可以提高应用程序池的安全性,因为每个应用程序池都有自己的身份验证,可以限制应用程序池进程对系统资源的访问权限。

出现500报错

则您需要将应用程序池中应用程序池默认设置标识参数值修改为 LocalSystem,以Windows Server 2012为例,操作步骤如下:

  1. Internet Information Services (IIS) 管理器页面左侧导航栏单击 应用程序池
  2. 在应用程序池列表空白处单击鼠标右键,然后单击 设置应用程序池默认设置

p534339.png

应用程序池默认设置对话框的进程模型区域,将标识参数的值修改为 LocalSystem
p534344.png

以上 设置程序池默认设置 是对所有所有应用程序池生效

我们要单独对这个PHP站点设置,右键选择对应程序池-高级设置-标识 那里选择 LocalSystem

QQ截图20230511092757.png

参考教程:https://help.aliyun.com/document_detail/40973.html#476cb2227062q

# Windows 

本文由:星际难民
实践,测试,整理发布.如需转载请注明地址 本文标题:IIS站点调试时,出现500报错如何处理。
地址:https://530503.xyz/articles/2023/05/09/1683598843545.html

评论

取消