学生が数学の演習を行うサイトを開発しています。合計で、55 個の XML ファイルに約 5000 個の演習が保存されています。XML ファイルは、Web サイトのルートにあるディレクトリに保存されます。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 ファイルを保護する最善の方法は何ですか?