【问题标题】:how to redirect anyone, accessing a specific folder to receive 404 error with htaccess?如何重定向任何人,访问特定文件夹以使用 htaccess 接收 404 错误?
【发布时间】:2019-07-18 13:30:44
【问题描述】:

我正在尝试重定向那些尝试访问网络上的特定文件夹以接收 404 的人 示例:如果有人想访问www.mysite/myfolder/ 我希望那个人收到 404 错误 我现在尝试过的:

RewriteCond %{REQUEST_URI} ^/node/$
RewriteRule .* - [F]
RedirectMatch 301 www.yoursite/node/


RewriteEngine on
RewriteRule ^//node/123 /node/999 /node/128173/(.*)$ /pages/errors/404.php$1 [R=301,L]

那些真正有效的都没有收到 500 错误 还尝试简单地将所有内容重定向到一个不存在的站点,如下所示:

Options +FollowSymLinks
RewriteEngine On
Redirect 301 /node/*.*   http://www.your imaginary site/to-new-url

然而,仍然收到 500 有人可以帮忙吗?

【问题讨论】:

  • 当您访问时,您的 Apache 错误日志会显示什么内容?此外,如果您尝试创建自定义 404 页面,您将使用 ErrorDocument

标签: apache .htaccess


【解决方案1】:

为什么不拒绝访问 /node/ 文件夹?

<Directory /node/>
  Deny from all
</Directory>

或将 .htaccess 中的重写修改为:

RewriteEngine on
RewriteCond %{REQUEST_URI} ^node/ [NC]
RewriteRule (.*) /pages/errors/404.php [R=301,L]

但这不是一个好习惯,404 页面应该返回 HTTP 404 状态而不是 HTTP 301 作为重定向。

【讨论】:

    【解决方案2】:

    大家好,感谢您的回答 我的 500 错误显然是由于未在重定向表单中指定 https 之后一切正常

    【讨论】:

      猜你喜欢
      • 2011-12-01
      • 2015-04-07
      • 1970-01-01
      • 2011-02-04
      • 1970-01-01
      • 2015-03-24
      • 2012-04-12
      • 2017-09-08
      • 1970-01-01
      相关资源
      最近更新 更多