Linux操作

查看端口使用情况

netstat -antup

windows查看端口使用
netstat -ano
netstat -aon|findstr "80"

查看用户和组

cat /etc/group

列出用户所属的所有组**

有多种方法可以找出用户所属的组。

主用户的组存储在 /etc/passwd 文件中,补充组(如果有)列在 /etc/group 文件中。

找到用户群的一种方法是使用 cat , less 或 grep 这些命令列出这些文件的内容。另一个更简单的选择是使用一个命令,其目的是提供有关系统用户和组的信息。

使用 groups 命令

最常用的列出用户所属的所有组的命令是 groups 命令。在没有参数的情况下执行时,该命令将打印当前登录用户所属的所有组的列表:

groups
只看用户名

cut -d':' -f 1 /etc/passwd
cut -d':' -f 1 /etc/group

ping端口

为了使用Powershell ping特定端口,您必须使用“ Test-NetConnection”命令,后跟要pingIP地址和端口号。

$ Test-NetConnection <ip_address><!–autointro–>

windows子系统wsl使用

简介
通过重启windows达到重启wsl太耗费时间,但是wsl又不能通过reboot达到重启的目的

常用命令

解决方法
管理员权限打开powershell ,然后执行下面命令

关闭服务

net stop LxssManager

重启服务

net start LxssManager

我的操作记录:


(base) PS C:\Users\weiyo<!--autointro-->

终于找到我frp配置端口映射不成功的原因了

因为虽然防火墙把相应的端口打开了,但是docke-compose中跟主机的端口映射没有配置。

今天也成功把在线用户切换成本地用户,名字就是weiyo,密码没变,提醒词是昵称。然后远程访问就可以正常进行了。

切换成本地用户不是直接就有入口,我是在计算机管理中把用户名改过之后才有使用本地用户登陆选项的。

1panel搭建傲星工具箱

傲星工具箱简介

这是一款在线工具箱程序,您可以通过安装扩展增强她的功能

演示地址

1panel搭建运行环境

下载源码包选择full包

在GitHub仓库中的realease下载即可。

解压到网站index目录

1panel具备文件管理功能,也可以通过其他ftp等工具长传解压。

设置网站目录为public

这个项目的web执行目录是public子文件夹。

设置伪静态

1panel的网站设置中的伪静态可以直接添加。

location / {
if (!-e $request_filename){
rewrite  ^(.*)$  /index.php?s=$1  last;   break;
}
}

权限问题

访问域名提示创建文件夹失败,升高权限即可。进入安装界面如下。

php扩展问题

缺少ziparchive插件,构建php运行环境安装zip插件即可,注意是zip插件,不是ziparchive插件。

开始安装

填写数据库信息

设置oauth

默认的回调地址是这个
https://tool.weiyoun.com/oauth/callback/github
但在github中填写的地址不能带有/github不然不能正常回调。

https://tool.weiyoun.com/oauth/callback

我没有设置跨站等信息,1panel不知道怎么设置,所以有些功能可能不能用。

安装插件

从这里下载插件包
https://github.com/aoaostar/toolbox-plugins

在线安装插件总是失败。插件配置也没有研究明白,只能是手动下载再上传安装。

插件配置提示是这样的

https://github.com/{owner}/{repo}/raw/{branch}/{path}

我实际这么配置(无效)

https://github.com/aoaostar/toolbox-plugins/raw/master/dist

安装插件的时候报错

trim(): Passing null to parameter #1 ($string) of type string is deprecated

看来php版本太高了,运行环境php从8.2降到8.0h后可以正常使用。

<!–autointro–>

1panel搭建Alist

1panel搭建Alist

新建编排alist

version: '3.3'
services:
alist:
restart: always
volumes:
- './alist:/opt/alist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
container_name: alist
image: 'xhofe/alist:main'

新建网站设置反向代理

alist的容器地址加端口即可,配置域名和https

设置管理员用户和密码

# Randomly generate a password
docker exec -it alist ./alist admin random
# Manually set a password, `NEW_PASSWORD` refers to the password you need to set
docker exec -it alist ./alist admin set NEW_PASSWORD

获取到初始密码后就可以访问域名登录了。
进入到管理界面可以重新设置用户名和密码。

使用

配置文档

https://alist.nn.ci/guide/drivers

1panel搭建FreeGPT WebUI

1panel搭建FreeGPT WebUI

在容器菜单的编排中新建编排freegpt

写入

version: "3.7"
services:
freegpt:
image: ramonvc/freegpt-webui
container_name: freegpt
ports:
- "127.0.0.1:1338:1338"
restart: unless-stopped

新建反向代理网站后访问就可以使用了

HTTP错误代码大全

HTTP错误代码大全,http网站状态码各代表了什么?

响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。

响应码分五种类型,由它们的第一位数字表示:

1.1xx:信息,请求收到,继续处理

2.2xx:成功,行为被成功地接受、理解和采纳

3.3xx:重定向,为了完成请求,必须进一步执行的动作

4.4xx:客户端错误,请求包含语法错误或者请求无法实现

5.5xx:服务器错误,服务器不能实现一种明显无效的请求

所有 HTTP 状态代码及其定义。

代码 指示

2xx 成功

200 正常;请求已完成。

201 正常;紧接 POST 命令。

202 正常;已接受用于处理,但处理尚未完成。

203 正常;部分信息 — 返回的信息只是一部分。

204 正常;无响应 — 已接收请求,但不存在要回送的信息。

3xx 重定向

301 已移动 — 请求的数据具有新的位置且更改是永久的。

302 已找到 — 请求的数据临时具有不同 URI。

303 请参阅其它 — 可在另一 URI 下找到对请求的响应,且应使用 GET 方法检索此响应。

304 未修改 — 未按预期修改文档。

305 使用代理 — 必须通过位置字段中提供的代理来访问请求的资源。

306 未使用 — 不再使用;保留此代码以便将来使用。

4xx 客户机中出现的错误

400 错误请求 — 请求中有语法问题,或不能满足请求。

401 未授权 — 未授权客户机访问数据。

402 需要付款 — 表示计费系统已有效。

403 禁止 — 即使有授权也不需要访问。

404 找不到 — 服务器找不到给定的资源;文档不存在。

407 代理认证请求 — 客户机首先必须使用代理认证自身。

415 介质类型不受支持 — 服务器拒绝服务请求,因为不支持请求实体的格式。

5xx 服务器中出现的错误

500 内部错误 — 因为意外情况,服务器不能完成请求。

501 未执行 — 服务器不支持请求的工具。

502 错误网关 — 服务器接收到来自上游服务器的无效响应。

503 无法获得服务 — 由于临时过载或维护,服务器无法处理请求。

HTTP 401.1 – 未授权:登录失败

HTTP 401.2 – 未授权:服务器配置问题导致登录失败

HTTP 401.3 – ACL 禁止访问资源

HTTP 401.4 – 未授权:授权被筛选器拒绝

HTTP 401.5 – 未授权:ISAPI 或 CGI 授权失败

HTTP 403.1 禁止访问:禁止可执行访问

HTTP 403.2 – 禁止访问:禁止读访问

HTTP 403.3 – 禁止访问:禁止写访问

HTTP 403.4 – 禁止访问:要求 SSL

HTTP 403.5 – 禁止访问:要求 SSL 128

HTTP 403.6 – 禁止访问:IP 地址被拒绝

HTTP 403.7 – 禁止访问:要求客户证书

HTTP 403.8 – 禁止访问:禁止站点访问

HTTP 403.9 – 禁止访问:连接的用户过多

HTTP 403.10 – 禁止访问:配置无效

HTTP 403.11 – 禁止访问:密码更改

HTTP 403.12 – 禁止访问:映射器拒绝访问

HTTP 403.13 – 禁止访问:客户证书已被吊销

HTTP 403.15 – 禁止访问:客户访问许可过多

HTTP 403.16 – 禁止访问:客户证书不可信或者无效

HTTP 403.17 – 禁止访问:客户证书已经到期或者尚未生效

HTTP 404.1 – 无法找到 Web 站点

HTTP 405 – 资源被禁止

HTTP 406 – 无法接受

HTTP 410 – 永远不可用

HTTP 412 – 先决条件失败

HTTP 414 – 请求 – URI 太长

HTTP 500.100 – 内部服务器错误 – ASP 错误

HTTP 500-11 服务器关闭

HTTP 500-12 应用程序重新启动

HTTP 500-13 – 服务器太忙

HTTP 500-14 – 应用程序无效

HTTP 500-15 – 不允许请求 global.asa

Error 501 – 未实现

HTTP 502 – 网关错误

报错情况比较复杂,以下列出比较常见的几种报错内容。

403 报错:403报错是一个大类,403的报错基本上是权限问题,出现403报错时您需要检测权限配置问题。以下是关于403报错中具体报错的介绍。

403.1错误是由于执行访问被禁止而造成的。若试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会出现此种错误。

403.2错误是由于读取访问被禁止而造成的。导致此错误是由于没有可用的默认网页并且没有对目录启用目录浏览,或者要显示的HTML网页所驻留的目录仅标记为“可执行”或“脚本”权限。

403.3错误是由于写入访问被禁止而造成的。当试图将文件上载到目录或在目录中修改文件,但该目录不允许“写”访问时就会出现此种错误。

403.4错误是由于要求SSL而造成的。您必须在要查看的网页的地址中使用HTTPS。

403.5错误是由于要求使用128位加密算法的Web浏览器而造成的。如果您的浏览器不支持128位加密算法就会出现这个错误,您可以连接微软网站进行浏览器升级。

403.6错误是由于IP地址被拒绝而造成的。如果服务器中有不能访问该站点的IP地址列表,并且您使用的IP地址在该列表中时您就会返回这条错误信息。

403.7错误是因为要求客户证书。当需要访问的资源要求浏览器拥有服务器能够识别的安全套接字层(SSL)客户证书时会返回此种错误。

403.8错误是由于禁止站点访问而造成的。若服务器中有不能访问该站点的DNS名称列表,而您使用的DNS名称在列表中时就会返回此种信息。请注意区别403.6与403.8错误。

403.9错误是由于连接的用户过多而造成的,由于Web服务器很忙,因通讯量过多而无法处理请求时便会返回这条错误。

403.10错误是由于无效配置而导致的错误。当试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会返回这条错误。

403.11错误是由于密码更改而导致无权查看页面。

403.12错误是由于映射器拒绝访问而造成的。若要查看的网页要求使用有效的客户证书,而客户证书映射没有权限访问该Web站点时就会返回映射器拒绝访问的错误。

403.13错误是由于需要查看的网页要求使用有效的客户证书而使用的客户证书已经被吊销,或者无法确定证书是否已吊销造成的。

403.14错误Web服务器被配置为不列出此目录的内容,拒绝目录列表。

403.15错误是由于客户访问许可过多而造成的。当服务器超出其客户访问许可限制时会返回此条错误。

403.16错误是由于客户证书不可信或者无效而造成的。

403.17错误是由于客户证书已经到期或者尚未生效而造成的。

404 报错:404报错主要是页面显示问题或者页面的链接有问题,意味着链接指向的网页不存在,即原始网页的URL失效。当 Web服务器接到类似请求时,会返回一个404状态码,告诉浏览器已请求的资源并不存在。导致这个错误的原因一般有以下几种情况。

无法在所请求的端口上访问Web站点。

Web服务扩展锁定策略阻止本请求。

MIME映射策略阻止本请求。

网站更新改版,但某些局部板块沿用原来的模块,而原有的模块调用的文件已经被删除或转移了路径。

跟踪访问的各类脚码或CSS文件无效但调用代码依然存在。

某个目录被直接删除(导致一段时间该目录的文件在被爬行时全部报“404 Not Found”错误)。

网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问。

502 报错:当测试访问报错为502 Bad Gateway,这是Web程序配置异常导致的。建议结合Web访问日志,检测一下Web程序配置的参数设置是否有异常。

503 报错:503报错是一种HTTP状态码,与404同属一种网页状态出错码。两者的区别是:前者是服务器出错的一种返回状态,后者是网页程序没有相关结果后返回的一种状态。503报错产生的原因有可能是以下几种情况。

网络管理员可能关闭应用程序池以执行维护。

当请求到达时应用程序池队列已满。

# 解决npm安装electron总失败的问题

总述解决办法

先运行

npm install -g cnpm --registry=https://registry.npmmirror.com

再运行

cnpm install --save-dev electron

解决过程

今天在学习electron的quick start教程时到安装electron的步骤npm install --save-dev electron总是不成功.会卡在reify:lodash: timing reifyNode:node_modules/@types/node Completed in 578ms这里。

百度和谷歌搜索,各种换源加代理都没解决。 最后找到了https://npmmirror.com/这个网站,根据指导,安装定制的cnpm管理工具npm install -g cnpm --registry=https://registry.npmmirror.com

然后执行cnpm install --save-dev electron 成功了。

日志如下:

“`text
F:\learn\my-electron-app<!–autointro–>

python快速把列表所有元素分配给不同变量

你可以使用Python的解包操作符*来快速分配列表中的元素。例如,如果你有一个列表lst,你可以使用以下代码将其所有元素分配给不同的变量:

a, b, c = lst

这将把列表中的第一个元素分配给变量a,第二个元素分配给变量b,第三个元素分配给变量c。如果你想要将剩余的元素分配给一个单独的变量,你可以使用解包操作符*。例如:

a, b, *rest = lst

这将把列表中的前两个元素分配给变量ab,并将剩余的元素作为列表分配给变量rest

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--arg1', type=int)
parser.add_argument('--arg2', type=float)
args = parser.parse_args()
print(args.arg1)
print(args.arg2)

使用argparse模块来定义两个参数arg1arg2,并将它们分别分配给整数和浮点数类型的变量。然后,我们使用parse_args()方法从文件中读取这些参数,并将它们分配给各自的变量。