【问题标题】:blocking my website from others阻止其他人访问我的网站
【发布时间】:2023-03-12 04:54:01
【问题描述】:

我想阻止我的网站,并可能在我更新它时将它们重定向到 404 页面,这可能需要一些时间。

每次用户访问我的网站时都可以重定向到 404 页面吗?

【问题讨论】:

  • 404页面跟它有什么关系?

标签: .htaccess web block


【解决方案1】:

这会起作用,但这不仅会是错误信息(该页面不是“未找到” - 它只是当前正在更新),而且还会误导您的用户和爬虫。我会将它们重定向到“更新中”页面,并将其与 http 状态代码 423 (LOCKED) 一起发送给客户端,以提供符合您的场景的标准答案。

【讨论】:

    【解决方案2】:

    这里有一个更简单的想法:只需创建一个新的索引页面,它是您的原始页面,除了内容替换为“当前正在更新的网站;请稍后再回来”之类的消息。然后你会将所有点击到你的网站重定向到那个索引页面。

    这是我见过的许多网站倾向于做的,至少。这是有道理的,至少对我来说。我的意思是,您是否希望您的用户不知道为什么他们想要访问的页面不再存在,或者他们知道原因是因为站点正在更新?它与 404 页面基本相同,只是提供了为什么所需页面不存在的具体信息。

    编辑:看来我基本上是在谈论 503 页面,通过 David 的链接和 Roland 的回答。

    【讨论】:

    • 这也会干扰爬虫,因为它们会在不同的页面下找到完全相同的内容。这可能会导致网站排名下降。
    【解决方案3】:

    如果它只是站点停机维护期间的临时重定向,那么您可能不想使用 404 代码。看看other codes available to you。对于这样的场景,307(临时重定向)会更有意义。如果您有任何 SEO 或完全依赖搜索爬虫,这也会更好,因为它们会删除现在产生 404 的结果,但足够聪明,可以保留暂时产生 307 的结果。

    重定向本身可以正常工作,只需将所有流量重定向到静态页面。 (您是否需要有关如何做到这一点的建议,或者您只是在寻找替代选择和可行性?问题尚不清楚。如果是前者,我无能为力。自从我打开一个 . htaccess 文件。)

    基本上,404 告诉访问者:“此资源不在这里。不要再问了。”而 307 告诉访问者:“此资源暂时被其他东西处理,但它并没有真正移动,请稍后再试。”

    【讨论】:

    • 但是 307 会迫使他将带有 url 的位置标头添加到临时位置 - 但是他没有可用此内容的位置。所以一个 423 - 锁定或其他建议 503 会更好。
    • @Sebastian P.R. Gingter:说得好。我也喜欢另一个用户建议的 503 选项。有很多可用的代码,这完全取决于他在语义和逻辑上与他的情况相匹配的代码。我想重点是不只是默认为 404。
    • 我认为 307 是我正在搜索的内容......因为我希望用户重定向到一个页面,直到我完成将在根目录 (/) 中的网站升级并且我不想让访问者访问此页面,直到升级完成。
    【解决方案4】:

    你不应该那样做。在这种情况下,状态码 503“暂时不可用”要好得多。

    RewriteRule . - [R=503,L]
    

    这可能有效。

    【讨论】:

    • 啊,是的。维修用的503当然也不错。甚至可能比 423 更好。
    猜你喜欢
    • 2016-11-27
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    • 2016-10-20
    • 2014-04-03
    • 2017-11-03
    • 1970-01-01
    相关资源
    最近更新 更多