2014-07-17 39 views
0

我需要一个文件名传递给该脚本

https://github.com/ThomasDepole/Easy-PHP-Tail-/blob/master/tail.php

,所以我可以创建一个像

http://somedomain/monitor/index.php?log=1574930149 

链接脚本带有这样

$logFile = "/path/to/file"; 

定义的变量我试过把它改成

$logPath = "/path/to/"; 
$logName = $_GET[log]; 
$logFile = $logPath.$logName; 

它看起来是正确的,如果我

<?php echo $logFile; ?> 

但脚本无法打印的文件,因为它应该。

我到底做错了什么?

而且,我应该怎么做,以防止

http://somedomain/monitor/index.php?../../path/to/a/different/file 

谢谢。

+1

不要那样做。您允许用户在您的服务器上吐出** ANY **文件的内容。考虑'index.php?log = ../../../../../etc/passwd' –

+0

尝试'$ _GET ['log']'而不是'$ _GET [log]' – asiviero

回答

-1

我不知道我能回答的第一部分,但对于消毒的日志文件的路径,请参考this question