HTTP错误404:找不到请求资源

时间:2014-03-24 14:15:28

标签: iis-7

我在IIS7上运行了三个系统,静态IP地址为192.168.66.5。我已将系统配置为在具有不同端口和子域的相同IP地址上运行;

  1. 192.168.66.5:81主机名ams.tpf.go.tz

  2. 192.168.66.5:82主机名gmis.tpf.go.tz

  3. 192.168.66.5:83 hostname records.tpf.go.tz

  4. 192.168.66.5:84主机名cmis.tpf.go.tz

  5. 我在IIS7上配置所有这些并在路由器中定义它们 当客户端在未指定端口号的情况下打开ams.tpf.go.tz时,将返回错误404:找不到请求的资源。

6 个答案:

答案 0 :(得分:7)

最近我也想到了 - 确保你的 IIS网站已经启动 - 我的网站已被停止。这是我在Visual Studio中收到的错误:

  

无法在Web服务器上启动调试。 Web服务器找不到请求的资源。

右键单击 IIS管理器中的网站(即默认网站),然后单击管理网站 - >开始

导航到IIS网站中的任何应用程序都显示此错误:

  

HTTP错误404.找不到请求的资源。

答案 1 :(得分:2)

实现此目的的最简单方法是为您希望成为"默认"的网站设置端口80。一,因为这是默认的HTTP端口。

答案 2 :(得分:0)

有时候IIS管理器 - >管理网站 - >如果以下2个服务未运行,则启动将无效 1. Windows激活技术服务 2.万维网发布服务

在Windows服务下手动启动这些服务,然后再次启动IIS。

答案 3 :(得分:0)

我遇到一些频率的另一个原因是将权限正确设置到物理目录。它可以实现到IIS - >单击该网站,然后在操作面板中单击“编辑权限”。确保您要分配权限的用户与身份验证中定义的用户相同 - >匿名身份验证或ASP.NET模拟,如果启用了任何这些身份验证方法。

要了解为这些身份验证方法分配的用户,请转到“身份验证”图标,选择之前提到的任何身份验证方法,右键单击它并选择“编辑”。之后,您可以选择所需的用户。

希望这有帮助。

答案 4 :(得分:0)

我给其他任何来自Google的人的问题。我托管了一个django网站,因此在我的webconfig文件中将其设置为使用python虚拟环境处理请求。在web.config文件中,这部分是

<configuration>
    <system.webServer>
        <handlers>
            <add name="Python FastCGI"
                 path="*"
                 verb="*"
                 modules="FastCgiModule"
                 scriptProcessor="C:\inetpub\wwwroot\receipts\venv\Scripts\python.exe|C:\inetpub\wwwroot\receipts\venv\Lib\site-packages\wfastcgi.py"
                 resourceType="Unspecified"
                 requireAccess="Script" />
        </handlers>
        ...
</configuration>

当有对媒体文件夹的请求时,IIS会很好说,我知道该怎么做通过scriptProcessor(python处理器)发送它。对媒体文件夹的请求不应这样做,因为它们仅需要提供静态文件(无需额外处理)。我将此web.config放在了媒体目录中,它解决了我的问题!

<configuration>
    <system.webServer>
        <handlers>
            <!-- this configuration overrides the FastCGI handler to let IIS serve these static files -->
            <clear />
            <add name="StaticFile" 
                path="*"
                verb="*"
                modules="StaticFileModule"
                resourceType="File"
                requireAccess="Read" />
        </handlers>
    </system.webServer>
</configuration>

答案 5 :(得分:0)

在我的情况下 IIS 服务器并通过以下步骤解决。

  1. 检查安全组 - 我们是否已打开从 ALB SG 到 EC2 SG 的所需端口。
  2. <块引用>

    登录到服务器并检查 IIS 服务器的默认站点是否打开了 443 端口,如果您的健康检查在 443 上。(无论您使用什么端口进行健康检查)。

使用 curl 命令解决问题。

  1. 如果您想检查 HTTPS,请使用以下命令检查响应。使用 -k 或 --insecure 忽略 SSL 问题。

    curl https://[serverIP] -k

  2. 对于 HTTP 测试,请使用以下命令。

    curl http://[serverIP]