所以我有一个带Nginx的CentOS服务器,现在想用PHP-FPM运行Nginx.默认情况下,它配置为端口9000,但我将使用9001.我需要知道如何在我的iptables中打开端口9001进行环回.以下哪项是正确的,它们是相同的,还是两者都错了?任何帮助将不胜感激,谢谢:)
iptables -A INPUT -p tcp -s 127.0.0.0 --dport 9001 -j ACCEPT
要么
iptables -A INPUT -i lo --dport 9001 -j ACCEPT
我正在学习Perl并且正在尝试编写一个脚本,该脚本将模式和文件列表作为命令行参数并将它们传递给子例程,然后子例程打开每个文件并打印与模式匹配的行.以下代码有效; 但是,它在从第一个文件打印行后停止,甚至没有触摸第二个文件.我在这里错过了什么?
#!/usr/bin/perl
use strict;
use warnings;
sub grep_file
{
my $pattern = shift;
my @files = shift;
foreach my $doc (@files)
{
open FILE, $doc;
while (my $line = <FILE>)
{
if ($line =~ m/$pattern/)
{
print $line;
}
}
}
grep_file @ARGV;
Run Code Online (Sandbox Code Playgroud) 所以我正在学习PHP并正在登录页面.我已经想出如何使用SHA256注册一个新用户来哈希$ salt + $密码.我知道有更慢的加密方法,如bcrypt,但出于学习目的,我只是使用SHA256.我的问题是,使用它加密后:
function HashPassword($password) {
$salt = bin2hex(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
$hash = hash("sha256", $salt . $password); column
$final = $salt . $hash;
return $final;
}
Run Code Online (Sandbox Code Playgroud)
使用预处理语句,从数据库中检索哈希密码的最佳方法是什么,所以我可以使用这样的函数验证它?
function ValidatePassword($password, $hash_pass) {
$salt = substr($hash_pass, 0, 64);
$trueHash = substr($hash_pass, 64, 64);
$reHash = hash("sha256" , $salt . $password);
return $reHash == $trueHash;
}
Run Code Online (Sandbox Code Playgroud)