【问题标题】:.htaccess redirect to 404 page RewriteRule.htaccess 重定向到 404 页面 RewriteRule
【发布时间】:2011-12-05 17:26:48
【问题描述】:

如果输入或到达某个文件夹/url 路径,是否有办法在 htaccess 文件中输入 RewriteRule 以重定向到 404 页面?

例如,如果我希望每个用户在到达以下位置时都被重定向到 404 页面: www.mydomain.com/abc 或 www.mydomain.com/abc/ 或“abc”之后的任何内容,即使该文件夹确实存在,我也不希望用户能够访问它。如果他们确实到达了它,我希望他们看到 404 错误页面。 * 请注意,我不是要设置自定义 404 错误页面,而是要寻找一种重定向到默认 404 页面的方法。

我该怎么做?有可能吗?

RewriteRule ^abc/(*)?$ [R=404,L]

我怎样才能在 php 中做同样的事情,重定向到 404 错误页面?再一次,我不是在谈论设置自定义 404 页面,而是在谈论默认的 404 页面,只是使用 php 将用户重定向到 404 错误页面。

【问题讨论】:

  • 您无法删除或重命名文件夹?
  • 是的,我可以,但我不想。这是为了安全问题。
  • 您没有找到自定义页面?
  • htaccess 在文件夹 abc 中使用 "deny from all"
  • 您是否尝试过更改权限以使 apache 用户无法读取 /abc/ 中的页面,从而阻止公众访问这些页面?

标签: php .htaccess redirect http-status-code-404


【解决方案1】:

您可以使用RedirectMatch 指令来代替mod_rewrite

RedirectMatch 404 ^/abc/.*$

【讨论】:

  • RedirectMatch 404 "/abc*" 完成了这项工作。感谢您的建议。
  • @Michal Wojciechowski 嗨!我使用您的解决方案来阻止访问 maindomain.com/addon.com。您知道是否可以使用它来阻止访问 addon.maindomain.com ?请参阅我的问题stackoverflow.com/questions/51268061/…。谢谢
【解决方案2】:

我在我的网站上做了这个:

RewriteRule ^404/?$ 404.php
ErrorDocument 404 http://www.example.com/404/

我在我网站的根目录上放置了一个404.php 页面来自定义该页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-29
    • 2016-11-21
    • 2013-01-31
    • 2014-12-23
    • 2013-06-09
    • 2023-03-10
    • 2019-04-25
    相关资源
    最近更新 更多