SSH、Git与Sourcetree

电脑生成公私钥

ssh-keygen -t rsa

将公钥加入git服务器

测试git是否连接成功

ssh -T git@githup.com -p port

正常使用就可以了

win server 2022激活

1.下载
百度网盘下载

链接:https://pan.baidu.com/s/18c5smZPzbk0ClhEYh4LQ2w
提取码:w7i8

2.安装
最近版本新出的镜像官方的 EFI 文件在虚拟机上部署有问题,如发现不能在虚拟机内使用,切换虚拟机配置为 BIOS,而非 UEFI 属性。

3.激活
首先输入下面的命令,更改Windows server 2022操作系统序列号。

VDYBN-27WPP-V4HQT-9VMD4-VMK7H

slmgr -ipk VDYBN-27WPP-V4HQT-9VMD4-VMK7H

接下来更改KMS激活服务器,使用下面的命令进行更改

slmgr /skms kms.03k.org

完成KMS服务器的设置以后,就可以使用下面的命令来激活你的Windows server 2022操作系统。

slmgr -ato

通过slmgr.vbs -dlv命令可以看到激活后的使用期限为180天,可以重置的计数1000次以上,应该可以让你完成测试使用。以上的方法供学习使用。

Linux下常用的端口转发工具

1、iptables 端口转发

CentOS 7.0 以下使用的是iptables,可以通过iptables实现数据包的转发。

(1)开启数据转发功能

vi /etc/sysctl.conf
#增加一行 net.ipv4.ip_forward=1
//使数据转发功能生效
sysctl -p

(2)将本地的端口转发到本机端口

iptables -t nat -A PREROUTING -p tcp --dport 2222 -j REDIRECT --to-port 22

(3)将本机的端口转发到其他机器

iptables -t nat -A PREROUTING -d 192.168.172.130 -p tcp --dport 8000 -j DNAT --to-destination 192.168.172.131:80
iptables -t nat -A POSTROUTING -d 192.168.172.131 -p tcp --dport 80 -j SNAT --to 192.168.172.130

#清空nat表的所有链
iptables -t nat -F PREROUTING

2、firewall 端口转发

CentOS 7.0以上使用的是firewall,通过命令行配置实现端口转发。

(1)开启伪装IP

firewall-cmd --permanent --add-masquerade

(2)配置端口转发,将到达本机的12345端口的访问转发到另一台服务器的22端口。

firewall-cmd --permanent --add-forward-port=port=12345:proto=tcp:toaddr=192.168.172.131:toport=22

(3)重新载入,使其生效。

firewall-cmd --reload

3、rinetd 端口转发

rinetd是一个轻量级TCP转发工具,简单配置就可以实现端口映射/转发/重定向。

(1)源码下载

wget https://li.nux.ro/download/nux/misc/el7/x86_64/rinetd-0.62-9.el7.nux.x86_64.rpm

(2)安装rinetd

rpm -ivh rinetd-0.62-9.el7.nux.x86_64.rpm

(3)编辑配置文件

vi rinetd.conf
0.0.0.0 1234 127.0.0.1 22

(4)启动转发

rinetd -c /etc/rinetd.conf

4、ncat 端口转发

netcat(简称nc)被誉为网络安全界的”瑞士军刀“,一个简单而有用的工具,这里介绍一种使用netcat实现端口转发的方法。

(1)安装ncat

yum install nmap-ncat -y

(2)监听本机 9876 端口,将数据转发到 192.168.172.131的 80 端口

ncat --sh-exec "ncat 192.168.172.131 80" -l 9876 --keep-open

5、socat 端口转发

socat是一个多功能的网络工具,使用socat进行端口转发。

(1)socat安装

yum install -y socat

(2)在本地监听12345端口,并将请求转发至192.168.172.131的22端口。

socat TCP4-LISTEN:12345,reuseaddr,fork TCP4:192.168.172.131:22

6、 portmap 端口转发

Linux 版的lcx,内网端口转发工具。

(1)下载地址:

http://www.vuln.cn/wp-content/uploads/2016/06/lcx_vuln.cn_.zip

(2)监听本地1234端口,转发给192.168.172.131的22端口

./portmap -m 1 -p1 1234 -h2 192.168.172.131 -p2 22

js数字计算精度问题解决方法

parseFloat((数学表达式).toFixed(digits)); // toFixed() 精度参数须在 0 与20 之间
// 运行
parseFloat((1.0 – 0.9).toFixed(10)) // 结果为 0.1
parseFloat((0.3 / 0.1).toFixed(10)) // 结果为 3
parseFloat((9.7 * 100).toFixed(10)) // 结果为 970
parseFloat((2.22 + 0.1).toFixed(10)) // 结果为 2.32

thinkphp5 composer安装phpexcel插件及使用

1.在下载好的tp5.0 框架里面使用 composer 下载phpexcel 的插件

composer require phpoffice/phpexcel

在下载好之后需要将/vendor/phpoffice/phpexcel/classes/phpexcel/ole.php 里面的continue 改为break;

2.在框架里面创建使用phpexcel 导出方法

引入相应的类

use PHPExcel_IOFactory;
use PHPExcel;
public function export()
{
	//1.从数据库中取出数据
	$list = Admins::where('login_status', 0)->order('id', 'desc')->column('id,username,phone,create_time');
	$list = array_values($list);

	//3.实例化PHPExcel类
	$objPHPExcel = new \PHPExcel();

	//4.激活当前的sheet表
	$objPHPExcel->setActiveSheetIndex(0);

	//5.设置表格头(即excel表格的第一行)
	$objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', 'ID')->setCellValue('B1', '用户名')->setCellValue('C1', '手机号码')->setCellValue('D1', '创建时间');

	//设置B列水平居中
	$objPHPExcel->setActiveSheetIndex(0)->getStyle('B')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);

	//设置单元格宽度
	$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('E')->setWidth(15);
	$objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('F')->setWidth(30);

	//6.循环刚取出来的数组,将数据逐一添加到excel表格。
	for($i=0;$i<count($list);$i++){
		$objPHPExcel->getActiveSheet()->setCellValue('A'.($i+2),$list[$i]['id']);//添加ID
		$objPHPExcel->getActiveSheet()->setCellValue('B'.($i+2),$list[$i]['username']);//添加用户名
		$objPHPExcel->getActiveSheet()->setCellValue('C'.($i+2),$list[$i]['phone']);//添加手机号码
		$objPHPExcel->getActiveSheet()->setCellValue('D'.($i+2),$list[$i]['create_time']);//添加创建时间
	}

	//7.设置保存的Excel表格名称
	$filename = '管理员'.date('ymd',time()).'.xls';

	//8.设置当前激活的sheet表格名称;
	$objPHPExcel->getActiveSheet()->setTitle('管理员列表');

	//9.设置浏览器窗口下载表格
	header("Content-Type: application/force-download");
	header("Content-Type: application/octet-stream");
	header("Content-Type: application/download");
	header('Content-Disposition:inline;filename="'.$filename.'"');

	//生成excel文件
	$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');

	//下载文件在浏览器窗口
	$objWriter->save('php://output');
	exit;
}

3.这里面的excel 的格式是定式的 ,如果表字段比较多的话可以创建数组循环设置

composer 版本忽略

执行 composer update 命令的时候报 Your requirements could not be resolved to an installable set of packages. 错误

Your requirements could not be resolved to an installable set of packages.

以上原因:不匹配composer.json要求的版本。

解决方案:

composer可以设置忽略版本匹配,

composer install –ignore-platform-reqs

composer update –ignore-platform-reqs
再次执行composer命令可以正常安装包了。
————————————————
版权声明:本文为CSDN博主「请叫我大稳哥」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_35646802/article/details/103009912

Centos7.6多网卡多IP配置

1.进入网卡配置文件

cd /etc/sysconfig/network-scripts/

2.创建新网卡的配置文件 ifcfg-eth1

cp ifcfg-eth0 ifcfg-eth1

这样副网卡配置文件生成了,下面是详细配置

3.ifcfg-eth0配置

# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=static
DEVICE=eth0
HWADDR=52:54:00:17:f0:c8
NM_CONTROLLED=yes
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no
IPADDR0=172.27.0.10
IPADDR1=172.27.0.11
IPADDR2=172.27.0.12
IPADDR3=172.27.0.13
IPADDR4=172.27.0.14
IPADDR5=172.27.0.15
IPADDR6=172.27.0.16
IPADDR7=172.27.0.17
IPADDR8=172.27.0.18
IPADDR9=172.27.0.19
NETMASK=255.255.0.0
GATEWAY=172.27.0.1
DNS1=183.60.83.19
DNS2=183.60.82.98

BOOTPROTO=static,设置为静态IP
DEVICE=eth0,对应网卡配置文件名称
HWADDR=52:54:00:17:f0:c8,对应网卡ID,貌似可以不些

4.ifcfg-eth1配置

# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=static
DEVICE=eth1
#HWADDR=20:90:6f:a0:fe:bd
NM_CONTROLLED=yes
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no
IPADDR0=172.27.0.20
IPADDR1=172.27.0.21
IPADDR2=172.27.0.22
IPADDR3=172.27.0.23
IPADDR4=172.27.0.24
IPADDR5=172.27.0.25
IPADDR6=172.27.0.26
IPADDR7=172.27.0.27
IPADDR8=172.27.0.28
IPADDR9=172.27.0.29
NETMASK=255.255.0.0
#GATEWAY=172.27.0.1
DNS1=183.60.83.19
DNS2=183.60.82.98

5.关闭 rp_filter 校验,在 /etc/sysctl.conf 中关闭反向过滤

反向过滤指系统在接收到一个 IP 包后检查该 IP 是否符合要求,不合要求则被丢弃。
例如:用户在 A 网卡上收到一个 IP 包,发送 IP 为 B。而给 B 的 IP 发送时用的网卡不是 A,则会丢弃。由于默认路由走的是主网卡,所以开启反向过滤后,辅助网卡上的 IP 会 ping 不通。

打开配置文件:vim /etc/sysctl.conf。

把配置文件中原配置中的net.ipv4.conf.default.rp_filter = 1,修改成:

net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth1.rp_filter = 0

6.重启网络服务

systemctl restart network

7.查看网络配置状态

ip addr

IDEA无限试用方法【2021最新亲测有效】

原理:IDEA可以试用一个月,利用插件可以无限试用,经过我亲自验证可行(见图片附件)。

方法步骤:

第①步、在Settings/Preferences… -> Plugins 内手动添加第三方插件仓库地址:https://plugins.zhile.io

v2-5c7d19cd482b07bce259f311fb43a2fe_720w-1
v2-0bb12946fa942a1168c9c019c5476c55_720w-1

第②步、搜索:IDE Eval Reset插件进行安装。如果搜索不到请注意是否做好了上一步?网络是否通畅?

v2-6ff12e0aa0d1b0b9f136211ff1be0f89_720w-1

第③步、勾选:Auto reset before per restart ,每次重启IDEA会自动重置,这样就达到了无限试用的效果。

v2-0465801e9e490cb9ad959018d45338c3_720w
v2-275fa2aa168643b11503a3bd4cbbc4f1_720w