在使用PHPass(http://www.openwall.com/phpass/)时,我收到以下警告:
open_basedir restriction in effect. File(/dev/urandom) is not within the allowed path(s)
字符串
虽然这不是一个大问题(它会依赖于其他东西),但我不希望有这个警告。PHP应用程序应该在不同的服务器上运行,一些用户可以将该路径添加到他们允许的open_basedir路径中,但其他人无法访问该配置。
我的第一个猜测是用is_readable()
检查可读性,然而,我仍然得到警告。
**问题:**如何检查某个路径或文件是否已添加到open_basedir路径?
4条答案
按热度按时间9udxz4iz1#
您可以使用
ini_get()
function读取PHP指令的值:字符串
如果指令不为空,它应该包含一个字符串,其中有一个或多个路径,路径之间用
PATH_SEPARATOR
分隔。ercv8c1e2#
您可以使用
is_readable
并使用@
禁用此函数的警告。如果
is_readable
返回false,那么你知道它是不可读的。字符串
ezykj2lf3#
file_exists
在目录受限时发出警告。让我们使用它:字符串
amrnrhlw4#
我现在抑制了从
is_readable()
发出的警告,尽管我认为这是不好的做法,但它确实有效。字符串