为什么此链接的 pdf 会定期出现 404 错误?

为什么此链接的 pdf 会定期出现 404 错误?

如果我转到此链接

http://www.moreshesashkenaz.org/mm/publications/MadrichEnglish.pdf

有时(可能总是),我会收到 404 错误

幸运的是,有一次我点击它时它成功加载了。

然后我按下 shift-F5,但失败了。不过现在我按下 shift-F5,它仍然加载。

当它没有加载时,我收到了这条消息

在此处输入图片描述

尽管有时它确实会加载。

我还没有遇到过使用 wget 失败的情况,但我猜那只是偶然。

可能是什么原因造成的?也许是服务器负载过大?

如果我能做些什么来确保链接加载,我会很感兴趣,尽管我猜这是他们的问题,而我无能为力......在这种情况下,我仍然对可能导致这种情况的原因感兴趣。

答案1

为什么此链接的 pdf 会定期出现 404 错误?

简短回答:

无法调试。我们无法看到网站的源代码、它的配置方式等。

长答案:

404 响应有以下几个普遍接受的原因(见HTTP 404举几个例子),但网站可以配置为因任何原因返回 404(取决于网站作者决定如何处理特定请求)。

没有什么可以阻止返回 404 错误,因为今天恰好是星期五(举个例子)或者因为蒂姆·波斯特 (Tim Post) 丢失了钥匙

这完全取决于网站作者。

由于该网站看起来相当安全,我们无法访问其配置或源代码,所以我们无法找出答案。


我们对该网站了解多少

它使用以下内容:

  • PHP
  • SSL
  • JavaScript
  • Moo工具
  • Joomla

以及许多其他技术。

这些都无法从外部访问,所以对调试您的问题没有帮助。

来源www.moreshesashkenaz.org 的站点报告


使用 Firefox 进行调试

请求标头:

Host: www.moreshesashkenaz.org
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://www.moreshesashkenaz.org/mm/publications/
Cookie: 4957186c87cf302cf91cc7d50c18a108=S%2CSKrRvB%2CMirDEhhz%2CPgH2; jfcookie[lang]=en
Connection: keep-alive
If-Modified-Since: Fri, 14 Aug 2015 11:14:25 GMT

回复:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us" dir="ltr">
<head>
    <title>404 - Error: 404</title>
    <link rel="stylesheet" href="/templates/system/css/error.css" type="text/css" />
    </head>
<body>
    <div align="center">
        <div id="outline">
        <div id="errorboxoutline">
            <div id="errorboxheader">404 - Component not found</div>
            <div id="errorboxbody">
            <p><strong>You may not be able to visit this page because of:</strong></p>
                <ol>
                    <li>an <strong>out-of-date bookmark/favourite</strong></li>
                    <li>a search engine that has an <strong>out-of-date listing for this site</strong></li>
                    <li>a <strong>mistyped address</strong></li>
                    <li>you have <strong>no access</strong> to this page</li>
                    <li>The requested resource was not found.</li>
                    <li>An error has occurred while processing your request.</li>
                </ol>
            <p><strong>Please try one of the following pages:</strong></p>
            <p>
                <ul>
                    <li><a href="/index.php" title="Go to the Home Page">Home Page</a></li>
                </ul>
            </p>
            <p>If difficulties persist, please contact the System Administrator of this site.</p>
            <div id="techinfo">
            <p>Component not found</p>
            <p>
                            </p>
            </div>
            </div>
        </div>
        </div>
    </div>
</body>
</html>

请注意响应中包含的 CSS:

/templates/system/css/error.css

其中包括以下评论:

/**
 * CSS Document for offline page
 * @version $Id: error.css 14401 2010-01-26 14:10:00Z louis $
 * @package Joomla
 * @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
 * @license GNU/GPL, see LICENSE.php
 * Joomla! is free software and parts of it may contain or be derived from the
 * GNU General Public License or other free or open source software licenses.
 * See COPYRIGHT.php for copyright notices and details.
 */

请注意以下几点:

离线页面的 CSS 文档

该网站包含此 CSS 是因为它已被编码(无论出于何种原因)为“离线页面”返回此 CSS。

答案2

就我个人而言,我只了解 HTML 编码和 Web 服务器的基础知识,但让我们看看我们可以在这里找到什么事实:

  • 如果我们打开链接http://www.moreshesashkenaz.org/mm/publications/MadrichEnglish.pdf
    有时有效,有时404

  • 如果我们打开http://www.moreshesashkenaz.org/mm/publications/
    当我第一次打开它时,文件是可见的,并且链接可以正常工作,现在它们全部消失了。编辑:我意识到它对我有用,因为打开它后,我删除了-endingMadrichEnglish.pdf并重新加载页面(而不是通过刷新)使其工作。

  • Ping 到 www.moreshesashkenaz.org (66.33.211.53) 时出现罚款结果 所以我不认为这是因为服务器超载

  • 我已经离开http://www.moreshesashkenaz.org/mm/publications/在标签页中加载时打开。有趣的是,如果我现在打开它,列表是空的,从之前加载的选项卡来看,链接仍然正常工作。

  • 随着我不断测试,事情变得越来越有趣,因为如果我复制列表为空的选项卡的 URL 并将其粘贴到另一个选项卡中,列表就会加载,但如果我将其作为新链接打开,例如从此链接http://www.moreshesashkenaz.org/mm/publications/它又变空了。

  • 另外,如果我将链接复制到 Word 文档中,并从那里打开它,该链接就会再次起作用。

我希望这些信息能够引起某些人的注意并给出适当的答案,我只能猜测这与字符编码有关。

编辑:

  • 使用 Internet Explorer、Chrome、Waterfox(*64 位版本的 Firefox)和 IOS 上的 Safari 测试了该链接,结果相同:将链接复制到新选项卡可加载链接,以超链接形式打开页面无法正常加载。
    使用 Stack Exchange 应用程序打开链接可使页面正常工作并加载链接。我还尝试使用 Facebook 应用程序打开它,但链接再次无法加载。

答案3

尝试将以下内容添加到您的.htaccess文件中:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule !(js|ico|gif|jpg|png|pdf|css|swf|flv|libraries|maint|admin|login|logout|reg) index.php [QSA,L,NC]
</IfModule>

我在使用 PDF 时也遇到了同样的问题(和其他文件类型),然后我的主机通知我NC添加RewriteRule

相关内容