vps开通最低权限的ssh用于科学上网

vps增加SSH账号用来代理上网,即开通没有shell权限的SSH帐号的方法:(说明:此账号没有SSH登陆权限)

useradd -M -s /sbin/nologin -n username # 说明,username表示开通的ssh账号
userdel -r username # 删除用户
passwd username # 修改用户密码

操作实例演示:
比如要添加用户名为 SSH001 的账号,账号密码为:123 可以进行如下操作:
首先以root身份登录vps

[root@hc] useradd -M -s /sbin/nologin -n ssh001
[root@hc] passwd ssh001
Changing password for user ssh001
New UNIX password:123 # 实际操作中,这里的密码是不会显示的
Retype new UNIX password:123 # 实际操作中,这里的密码是不会显示的
passwd: all authenication tokens updated successfully.

注意:当你输入密码时,屏幕是没有任何字符显示的,系统会让你输入两次密码,来确认是否一致。
当出现最后一行的提示时,说明密码修改成功

[来源]

php中关于date中的周次

for ($i = 1990; $i <= 2025; $i++) {
	echo $i . '年第一天是星期' . date('w', strtotime($i . '-01-01')) . '====第'  . date('W', strtotime($i . '-01-01')) . '周&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;' . $i . '年最后一天是星期' . date('w', strtotime($i . '-12-31')) . '====第'  . date('W', strtotime($i . '-12-31')) . '周<br />';
}

clipboard

 

可以看到:
                年初的时候,如果第一天是周1,周2,周3,周4这几天,那么用date(‘W’,time())会解析出是这年的第一周
                                     如果第一天是周5,周6,周日这几天,那么用date(‘W’,time())会解析出是上一年的最后一周
                年末的时候,如果最后一天是周1,周2,周3这几天,那么用date(‘W’,time())会解析出是下一年的第一周
                                     如果 最后一天是周4周5,周6,周日这几天,那么用date(‘W’,time())会解析出是这年的最后一周

php匹配汉字的正则表达式,utf-8编码和gbk编码

/^[\x{4e00}-\x{9fa5}]+$/u

以上这个正则表达式就是困扰了很多php程序员的匹配汉字的正则表达式

大家可能会觉得很简单,实际上不同编码,不同程序语言,都有些细微的出入,稍不注意就得不到正确的结果。
下面是utf-8编码的例子:
程序语言为php
$str = "MyBB中文站";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) {
print("该字符串全部是中文");
} else {
print("该字符串不全部是中文");
}

下面的例子包含gbk,gb2312的用法,需要的可以取消gbk那行的注释,然后把utf-8的注释掉

<?php
$action = trim($_GET['action']);
if($action == "sub")
{
    $str = $_POST['dir'];    
    //if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312汉字字母数字下划线正则表达式 
    if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str))   //UTF-8汉字字母数字下划线正则表达式
    {   
        echo "<font color=red>您输入的[".$str."]含有违法字符</font>";   
    }
    else 
    {
        echo "<font color=green>您输入的[".$str."]完全合法,通过!</font>";   
    }
}
?>
<form method="POST" action="?action=sub">
输入字符(数字,字母,汉字,下划线):
    <input type="text" name="dir" value="">
    <input type="submit" value="提交">
</form>

具体如何得出这个正则表达式的,可以参考原文:http://www.diybl.com/course/4_webprogram/php/phpjs/20090302/156831.html