1 、临时生效(使用centos5,6,7版本)

hostname 修改的计算机名称

[root@localhost ~]# hostname centos
[root@localhost ~]# hostname
centos

[root@centos ~]# hostname
centos

2 永久修改

centos 7.x

[root@localhost ~]# vi /etc/hostname
centos

centos 6.x

[root@centos ~]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=centos
[root@centos ~]# hostname
centos

1,配置DNS

vi /etc/resolv.conf

nameserver 192.168.0.1
nameserver 8.8.8.8
nameserver 8.8.4.4

2,配置网关:

vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.168.0.1
3,配置ip地址: (找到自己的ifcfg)
vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=”eth0″
HWADDR=”00:0C:29:6C:BB:E6″
NM_CONTROLLED=”yes”
ONBOOT=”no”
NETMASK=255.255.255.0
IPADDR=192.168.0.8
GATEWAY=192.168.0.1
BOOTPROTO=static
ONBOOT=yes
PEERDNS=yes

4,重新启动服务:

/etc/init.d/network restart
或使用命令:
service network restart

centos配置网络

现在php很多加密解密生成的字符串都比较常,比如xxtea把数字1加密都可以生成12位字符串,10000更是高达16位。
如果简单的把产品ID加密生成较短的字符串,xxtea就不太适合的。对于这种简单的,要求不太高的加密解密,下面的函数就可以满足需求了。
经过测试发现,1位生成2位,2生成3位,3位生成4位,4位生成6位,5位生成7位,9位生成12位,还算ok

函数代码如下:

if( !function_exists(‘encrypt’) ){

/**
* 加密/解密函数
* @param $string 要解密/解密的字符串
* @param int $type 类型类1.产品 2.券 等等,参考app.php
* @param bool $operation 加密true/解密false
* @return bool|string 返回加密/解密结果
*/
function encrypt($string,$type=1,$operation=true){

$key_list = config(‘encrypt_key_list’);
if( !isset($key_list[$type]) ) {
return false;
}else{
$key=md5($key_list[$type]);
}
$data = trim($string);
if(empty($data)) return ”;

$x = 0;
$data = $operation ? $data : str_replace(‘_’,’+’,base64_decode($data)); //加密/解密数据
$len = strlen($data);
$l = strlen($key);

$char=”;
$str=”;

if($operation){ //加密

for ($i = 0; $i < $len; $i++)
{
if ($x == $l)
{
$x = 0;
}
$char .= $key{$x};
$x++;
}
for ($i = 0; $i < $len; $i++)
{
$str .= chr(ord($data{$i}) + (ord($char{$i})) % 256);
}

} else { //解密

for ($i = 0; $i < $len; $i++)
{
if ($x == $l)
{
$x = 0;
}
$char .= substr($key, $x, 1);
$x++;
}
for ($i = 0; $i < $len; $i++)
{
if (ord(substr($data, $i, 1)) < ord(substr($char, $i, 1)))
{
$str .= chr((ord(substr($data, $i, 1)) + 256) – ord(substr($char, $i, 1)));
}
else
{
$str .= chr(ord(substr($data, $i, 1)) – ord(substr($char, $i, 1)));
}
}

}

return $operation ? str_replace([‘+’,’=’],[‘_’,”],base64_encode($str)) : $str; //返回结果

}

}
由于此函数用的thinkphp 5.1 所以 $key_list = config(‘encrypt_key_list’); 在config/app.php 配置如下

retrun [
//省略很多代码

‘encrypt_key_list’ => [
1 => ‘gDVPwZr7iPWGISwX’,
2 => ‘JfKBdyfgfsRhTPXx’,
],

];

如果你用的不是此框架 对应的改成

$key_list = [
1 => ‘gDVPwZr7iPWGISwX’,
2 => ‘JfKBdyfgfsRhTPXx’,
],

当然随你改

PHP加密解密函数

创建管理员

use admin

db.createUser(
{
user: “admin”,
pwd: “admin”,
roles: [ { role: “userAdminAnyDatabase”, db: “admin” } ]
}
)
重启MongoDB实例

mongod –auth –port 27017 –dbpath <关联路径>

连接并认证

mongo –port 27017 -u “admin” -p “admin” –authenticationDatabase “admin”

添加额外权限用户

use test
db.createUser(
{
user: “test”,
pwd: “test123”,
roles: [ { role: “readWrite”, db: “test” } ]
}
)

连接并认证
mongo –port 27017 -u “test” -p “test123” –authenticationDatabase “test”
注意:如果是配置文件/etc/mongod.conf 启动的记得 在配置文件中写一行  auth=true #window   security:  authorization: enabled #linux
客户端认证 db.auth(“someAdminUser”, password)

mongodb 添加用户名密码

其他参数:

processManagement.fork: true 以daemon模式启动mongod

net.bindIp: 指定IP,逗号分隔,注释掉的情况下,服务启动在0.0.0.0

systemLog.quiet: true 日志输出使用quiet模式,只输出critical

storage.dbPath: 指定数据的存放位置

replication.replSetName: 副本集的名字

security.authorization: enabled 使用认证

security.keyFile: 使用keyFile

verbosity: 日志开启debug模式,0-5

operationProfiling.slowOpThresholdMs: slowlog设定,默认100

net.http.RESTInterfaceEnabled: rest接口是否有效

net.maxIncomingConnections: 最大连接数,默认65536,不能超过系统设置,# ulimit -n