如何显示错误页面而不是显示我的 cpanel 服务器上目录中的文件

问题描述 投票:0回答:1

当 URL 上没有指向文件时,任何人都可以帮助如何显示错误页面而不是显示我的文件的目录吗?例如,在附图中,我只需删除 thefile.php 并在浏览器上输入 URL,如 www.mywebsite.com/foldername/ 而不是 www.mywebsite.com/foldername/thefile.php ,它会显示所有内容该文件夹下的文件。我希望它将用户重定向到错误页面,而不是显示此文件夹中的所有文件。

php linux server cpanel
1个回答
0
投票

一种方法是在该文件夹中创建一个 index.php 文件,其内容如下:

<?php

$dir   = "."; // the directory you want to check
$exclude = array(".", "..", "index.php"); // ignore . .. and file itself
$files = scandir($dir);
$files = array_diff($files, $exclude); // delete the entries in exclude array from your files array

if(!empty($files)) {
   echo "there are files";
}
else
{
    header("Location: /404.php");
}

?>

当你访问http://url/folder时,index.php是默认加载的php文件,所以如果文件夹中除了index.php文件之外没有其他文件,就会显示404页面(你必须替换/404.php 页面以及您用于处理 404 错误的任何页面)

我想你也可以使用 .htaccess 中的一些正则表达式来做到这一点

© www.soinside.com 2019 - 2024. All rights reserved.