【问题标题】:How to prevent users from accessing files directly from url?如何防止用户直接从 url 访问文件?
【发布时间】:2019-07-11 17:19:24
【问题描述】:

我有一个名为home.php 的php 文件在其代码中使用main.php。两者都在同一个目录中。我不希望人们通过在 URL 中键入 main.php 来访问它,例如:http://localhost/main.php

.htaccess 中的代码是:

<Files main.php>
order deny,allow
deny from all
</Files>

但这也阻止了home.php 访问main.php

谁能帮我解决这个问题?

【问题讨论】:

  • 您尝试修复症状而不是修复原因。阅读一些有关现代 Web 应用程序如何工作的内容,以及服务所有请求的“控制器”。今天的 Web 应用程序不是通过 http 服务器公开物理文件,而是一个应用程序。您可以查看无数示例,搜索 MVC 或“php 路由器”或类似名称。

标签: php html .htaccess url


【解决方案1】:

试试这个

您可以在.htaccess 文件中添加行

Deny from all
ErrorDocument 403 "nothing is here"

如果未授权访问,它将显示“这里没有任何内容”消息。

如果你想通过错误代码重定向到某个页面,那么你可以定义如下命令:

ErrorDocument 404 "/errors/404.html"

它将重定向到/errors/404.html 并显示自定义页面未找到屏幕。

【讨论】:

  • 如何使用 .htaccess?
  • 这不允许本地主机也访问文件
猜你喜欢
  • 2012-05-01
  • 1970-01-01
  • 2016-06-28
  • 2016-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多