【问题标题】:How to Tell Which Pages Aren't Hit in IIS?如何判断 IIS 中哪些页面未命中?
【发布时间】:2014-05-19 21:06:44
【问题描述】:

我有一个遗留的 Classic ASP 应用程序以及一些总共有数千个页面的 .NET 页面,我知道其中很多页面不再使用/折旧,应该将其删除以进行清理上代码库。它们托管在 IIS 下,我只是想知道如何才能找出哪些页面没有被点击,以便安全地删除它们。

【问题讨论】:

    标签: asp.net iis asp-classic


    【解决方案1】:

    使用日志解析器查找系统中存在哪些页面,然后再次使用 logParser 查找系统中的哪些页面。找出折旧页面的差异。

    1. Which Pages Exists in your System

      logparser -i:FS "SELECT Path from c:\inetpub\wwwroot*.* ORDER BY Path

    2. Which Pages are hit in your Application

      logparser "select cs-uri-stem from [LogFileName] where cs-uri-stem like '%aspx%' or cs-uri-stem like '%ashx%' group by cs-uri-stem order by cs- uri-stem"

    3. 这些将为您生成两个不同的列表。将它们导入数据库(SQL Server)并使用以下查询

      从 PAGES_EXISTS 中选择路径

      除了

      从 PAGES_HIT 中选择路径

    【讨论】:

      【解决方案2】:

      您可能应该查看日志文件以查看哪些页面是 /hit/ 并基于此保持这些页面处于活动状态。

      【讨论】:

        【解决方案3】:

        日志解析似乎是一种痛苦的方式。如果您有能力再收集几个月的数据,请在您的经典 asp 页面中添加一个子例程,以将每个页面记录到 sql db 并更新计数。可能很有用,因为如果您删除这些页面,最终您将编写 301 重定向。

        【讨论】:

          【解决方案4】:

          如果它们不在日志中,这并不一定意味着它们未使用(ASP 包含)- 我将为所有 ASP 页面创建一个索引(使用 Lucene 之类的东西),然后搜索每个文件- 如果没有命中,则可以肯定不会使用它。您还可以检查文件系统上的最后访问时间(如果这在您的服务器上运行 - https://msdn.microsoft.com/en-us/library/windows/desktop/ms724290%28v=vs.85%29.aspx)。

          【讨论】:

            猜你喜欢
            • 2011-02-26
            • 2015-06-23
            • 1970-01-01
            • 1970-01-01
            • 2015-04-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-07-19
            相关资源
            最近更新 更多