php - 防止在 PHP 中通过 URL 创建网页
问题描述
我有一个 MediaWiki 1.32.0 网站。MediaWiki 网站目录包含LocalSettings.php
可以编写全局自定义 PHP 的文件。
作为一名非 PHP 程序员,我问是否有一些 PHP 命令可以用来通过该网页的 URL 来限制对某个现有网页的访问,以便创建它(的 HTML)的任何 Web 请求都将被拒绝,或者导致一些类似 404 的 HTTP 状态代码,或重定向到主页,只要该命令出现在LocalSettings.php
?
我更喜欢 PHP 方式,而不是.htacess
. 另外,我应该注意到该 URL 已经被robots.txt
.
解决方案
您可以像这样在 PHP 中获取请求的 URL:
$_SERVER['REQUEST_URI'];
并拒绝访问这样的页面:
$url = $_SERVER['REQUEST_URI'];
if ($url == "/wiki/blocked_page") die('404 error here');
或者像这样重定向到您的主页:
$url = $_SERVER['REQUEST_URI'];
if ($url == "/wiki/blocked_page") header('Location: /');
注意:request_url 是您的域名之后的所有内容。如果您的 URL 是https://example.com/wiki/blocked_pa ge request_url 将返回“/wiki/blocked_page”。
推荐阅读
- ios - 如何设置 Firebase iOS 身份验证电子邮件
- android - 如何测试协程正确?
- tooltip - 如何在 CKEditor 5 中更改按钮工具提示的默认位置
- docker - Prometheus - 目标连接被拒绝
- java - 使用 Java 客户端库在 BigQuery 中获取按标签过滤的表列表
- go - 使用 golang 代码部署 kubernetes Pod
- ios - iOS Workbox 后台同步 - FetchEvent.respondWith 收到错误:UnknownError: Error Preparation Blob/File data to be stored in object store
- intellij-idea - Databricks 笔记本多光标
- android - 带渐变颜色的虚线垂直线
- rest - REST - API 客户端是否应该像浏览器一样“推进”到“下一个”资源?