如何解决 HTTP 错误 500.0 - IIS10 上的内部服务器错误?
How to solve HTTP Error 500.0 - Internal Server Error on IIS10?
我已经玩了一段时间了,但是我还没有在网上发现任何类似的问题。我正在使用 Windows 10 Home 1909 和 IIS-10。这是我的应用程序的结构:
目录:
"C:\inetpub\wwwroot\website1"
-(包含文件:iisstart.htm
、iisstart.png
、index.html
、index.php
、web.config
)
web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<directoryBrowse enabled="true" />
<!--I have also tried with and without these
<requestFiltering>
<hiddenSegments>
<remove segment="App_GlobalResources" />
<remove segment="App_code" />
<remove segment="bin" />
<remove segment="App_Browsers" />
<remove segment="App_Data" />
<remove segment="App_WebReferences" />
<remove segment="App_LocalResources" />
</hiddenSegments>
</requestFiltering>
-->
</system.webServer>
</configuration>
"website1.com/index.html"
- 工作正常
"website1.com"
和"website1.com/index.php"
会给出如下错误:
IIS10(连接 website1.com):
- 默认文档:
index.php
、Default.htm
、Default.asp
、index.htm
、index.html
、iisstart.html
、default.aspx
条目类型继承(请注意,在 DEKSTOP-... 下存在相同的文件,但条目类型为 "LOCAL")
- PERMISSION (IIS_IUSRS): 拥有目录的所有权限:
"C:\xampp\php_7_2_31"
- FastCgiModule 是使用这些教程安装的:link1, link2 一步一步。
- 应用程序池:
CMD:(安装了 Microsoft Visual C++ 2015 Redistibutable (x64) - 14.0.23026)
Windows 特点:
现在是有趣的部分(我不知道如何进行)。
似乎没有触发 .NET,因此 FastCGI 给出了错误。我尝试在 Windows 功能中添加以下内容:
a) .NET Extensibility 3.5
& ASP NET 3.5
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
b) .NET Extensibility 4.8
& ASP NET 4.8
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
c) .NET Extensibility 3.5
& ASP NET 3.5
& .NET Extensibility 4.8
& ASP NET 4.8
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
如果你知道如何解决这个问题,请告诉我。我已经尝试了所有教程、论坛,但找不到任何东西。
你的php.exe文件夹路径之间有没有space?如果 php_7_2_31 之间有 space 则先将其删除。
看起来 iis 无法从 camp 文件夹中读取 PHP 的配置。要解决此问题,只需尝试从网络平台安装程序安装 PHP。它很容易下载和使用。安装后iis无需额外配置
我已经玩了一段时间了,但是我还没有在网上发现任何类似的问题。我正在使用 Windows 10 Home 1909 和 IIS-10。这是我的应用程序的结构:
目录:
"C:\inetpub\wwwroot\website1"
-(包含文件:iisstart.htm
、iisstart.png
、index.html
、index.php
、web.config
)
web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<directoryBrowse enabled="true" />
<!--I have also tried with and without these
<requestFiltering>
<hiddenSegments>
<remove segment="App_GlobalResources" />
<remove segment="App_code" />
<remove segment="bin" />
<remove segment="App_Browsers" />
<remove segment="App_Data" />
<remove segment="App_WebReferences" />
<remove segment="App_LocalResources" />
</hiddenSegments>
</requestFiltering>
-->
</system.webServer>
</configuration>
"website1.com/index.html"
- 工作正常
"website1.com"
和"website1.com/index.php"
会给出如下错误:
IIS10(连接 website1.com):
- 默认文档:
index.php
、Default.htm
、Default.asp
、index.htm
、index.html
、iisstart.html
、default.aspx
条目类型继承(请注意,在 DEKSTOP-... 下存在相同的文件,但条目类型为 "LOCAL") - PERMISSION (IIS_IUSRS): 拥有目录的所有权限:
"C:\xampp\php_7_2_31"
- FastCgiModule 是使用这些教程安装的:link1, link2 一步一步。
- 应用程序池:
CMD:(安装了 Microsoft Visual C++ 2015 Redistibutable (x64) - 14.0.23026)
Windows 特点:
现在是有趣的部分(我不知道如何进行)。
似乎没有触发 .NET,因此 FastCGI 给出了错误。我尝试在 Windows 功能中添加以下内容:
a) .NET Extensibility 3.5
& ASP NET 3.5
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
b) .NET Extensibility 4.8
& ASP NET 4.8
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
c) .NET Extensibility 3.5
& ASP NET 3.5
& .NET Extensibility 4.8
& ASP NET 4.8
- 重新启动我的机器并尝试它,它将 HTTP 错误更改为 500.24
如果你知道如何解决这个问题,请告诉我。我已经尝试了所有教程、论坛,但找不到任何东西。
你的php.exe文件夹路径之间有没有space?如果 php_7_2_31 之间有 space 则先将其删除。
看起来 iis 无法从 camp 文件夹中读取 PHP 的配置。要解决此问题,只需尝试从网络平台安装程序安装 PHP。它很容易下载和使用。安装后iis无需额外配置