我在使用FastCGI和NGINX的PHP 7.0.5上,在模式中我想在db中存储我的密码以便存储...我正在使用此代码,但是收到错误
$hash = password_hash("rasmuslerdorf", PASSWORD_BCRYPT, $options);
mod_fcgid:stderr:PHP致命错误:调用未定义的函数password_hash() 调用函数undefined。是吧?我认为这是一个原生的功能
在我的.htaccess文件中,我有:
RewriteRule v1 /(.*)$v1 / index.php?request = $ 1 [QSA,NC,L]
将/ v1 / register重定向到/v1/index.php
当我转到/ v1 /注册哈希崩溃并给出我的未定义时,但是,如果我直接转到/v1/index.php它可以工作!?
第
页的完整代码error_reporting(E_ALL);
$hash = password_hash("rasmuslerdorf", PASSWORD_BCRYPT);
echo "echo hash:" .$hash;
die;
答案 0 :(得分:1)
我几乎可以肯定你的服务器没有运行你认为的那样。 mod_fcgid
是一个Apache模块,.htaccess
也是特定于Apache的,因此您可能没有运行Nginx。 PHP 5.5.0中添加了密码散列函数。我要说你实际上正在使用PHP<运行Apache服务器5.5.0。您需要使用compatibility library来获取密码散列函数。