[英]Make XML-file inaccessible for user
我正在开发一个学生进行数学练习的网站。 总共在55个XML文件中存储了大约5000个练习。 XML文件存储在网站根目录中的目录中。 XML文件可通过PHP访问。 我想使学生无法访问XML文件。 我在XML文件的目录中制作了一个.htaccess文件:
deny from all
我的访问XML文件的PHP代码:
if(isset($_GET['m']) && isset($_GET['n']) && isset($_GET['o']))
{
if(is_numeric($_GET['m'])==false || is_numeric($_GET['n'])==false || is_numeric($_GET['o'])==false)
//if the variables are not numbers
{
header('location: /aanpassen');
exit();
}
if($_GET['m']<1 || $_GET['m']>11)
{
header('location: /aanpassen');
exit();
}
if($_GET['n']<1 || $_GET['n']>5)
{
header('location: /aanpassen');
exit();
}
$module = $_GET['m'];
$niveau = $_GET['n'];
$nummer = $_GET['o'] - 1;
//Get the right XML-file
$urlxml="../xml/module".$module."/niveau".$niveau."/opgave.xml";
$xml=simplexml_load_file($urlxml);
$opgave = $xml->opgave[$nummer];
if(!isset($opgave))//Als de opgave niet bestaat.
{
header('location: /aanpassen');
exit();
}
//The rest of the code
}
我尝试使用Javascript访问该文件(如果我是学生),但返回该文件被禁止。
仍有安全漏洞吗?
保护XML文件的最佳方法是什么?
现在是安全的。 但是将目录移到文档根目录之外会更好。 可以使用全局选项禁用“ .htaccess”(例如,以提高性能)。 在这种情况下,您的文件将可以再次访问。
确保应用程序本身无法编写.htaccess。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.