文件访问访问被拒绝
files access access deneid
您好,有这个代码可以管理我的主页。
在我家里的本地服务器上一切正常,我使用的是 easyphp。
但是在我的虚拟主机服务器上我得到了这个错误
Warning: scandir(D:\Hosting067690\html/,D:\Hosting067690\html/) [function.scandir]: Access is denied. (code: 5) in D:\Hosting067690\html\index_menu.php on line 65
有什么想法吗?
提前谢谢你。
<?php
$dir = $_SERVER['DOCUMENT_ROOT'].stripslashes(dirname($_SERVER['PHP_SELF'])).'/';
if(!empty($_GET['p'])){
$pages = scandir($dir, 0);
unset($pages[0], $pages[1]);
$p = $_GET['p'];
if (in_array($p.'.htm', $pages)){
include($dir.'/'.$p.'.htm');
}else{
echo 'Sorry, page introuvable';
}
}else{
include($dir.'/enter_index01.htm');
}
?>
您可以使用 file_exists 而不是使用所有 scandir 的东西来简化它:
$p = $_GET['p']; // WARNING: sanitize this before using it in production app
if (file_exists($dir.'/'.$p.'.htm')){
include($dir.'/'.$p.'.htm');
} else {
echo 'Sorry, page introuvable';
}
并清理用户输入(例如将其限制在特定路径、白名单等)。
您好,有这个代码可以管理我的主页。 在我家里的本地服务器上一切正常,我使用的是 easyphp。 但是在我的虚拟主机服务器上我得到了这个错误
Warning: scandir(D:\Hosting067690\html/,D:\Hosting067690\html/) [function.scandir]: Access is denied. (code: 5) in D:\Hosting067690\html\index_menu.php on line 65
有什么想法吗? 提前谢谢你。
<?php
$dir = $_SERVER['DOCUMENT_ROOT'].stripslashes(dirname($_SERVER['PHP_SELF'])).'/';
if(!empty($_GET['p'])){
$pages = scandir($dir, 0);
unset($pages[0], $pages[1]);
$p = $_GET['p'];
if (in_array($p.'.htm', $pages)){
include($dir.'/'.$p.'.htm');
}else{
echo 'Sorry, page introuvable';
}
}else{
include($dir.'/enter_index01.htm');
}
?>
您可以使用 file_exists 而不是使用所有 scandir 的东西来简化它:
$p = $_GET['p']; // WARNING: sanitize this before using it in production app
if (file_exists($dir.'/'.$p.'.htm')){
include($dir.'/'.$p.'.htm');
} else {
echo 'Sorry, page introuvable';
}
并清理用户输入(例如将其限制在特定路径、白名单等)。