首页
更多应用
Search
1
修改iview的标签为i-的形式而不是驼峰的形式
2,791 阅读
2
PHP微信和企业微信签名
2,522 阅读
3
在VUE中怎么全局引入sass文件
2,223 阅读
4
vscode硬件占用较高解决方案
2,017 阅读
5
解决Macos下storm系列IDE卡顿的问题
1,975 阅读
默认分类
JS
VUE
CSS
mac使用技巧
React
fastmock
登录
/
注册
Search
标签搜索
react
js
vue
vscode
nodejs
项目
代码
webpack
工具
nginx
小程序
css
fastmock
eslint
npm
http
vue-cli3
git
浏览器
const
fastmock技术社区
累计撰写
102
篇文章
累计收到
26
条评论
首页
栏目
默认分类
JS
VUE
CSS
mac使用技巧
React
fastmock
页面
更多应用
搜索到
5
篇与
的结果
2023-12-21
linux常用命令备忘
linux常用命令备忘进程管理相关查看指定名称的应用进程状态ps aux | grep node查看指定端口占用情况netstat -anp | grep 8080 或 lsof -i:80VIM显示行号,预览模式下(如果在编辑模式先按ESC退出编辑模式)输入:set nu跳转到指定行:预览模式下输入 :12 跳转到第 12 行跳转行尾:预览模式下,直接输入 $ 跳转到当前光标所在行行尾跳转行尾:预览模式下,直接输入 ^ (shift+6) 跳转到当前光标所在行行尾nginx 日志查询相关统计指定日志文件下的 ip 数量awk '{ ip_count[$1]++ } END { print length(ip_count) }' /var/log/nginx/access.log打印所有访问ipawk '{ ip_count[$1]++ } END { print "Unique IP Count:", length(ip_count); for (ip in ip_count) print ip }' /var/log/nginx/access.log根据访问 ip 统计 UVawk '{print $1}' access.log|sort | uniq -c | wc -l查询访问量最频繁的 IPawk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|moremacos 相关显示隐藏文件defaults write com.apple.finder AppleShowAllFiles -bool true使用brew启动引用brew services list 打印所有可用服务后使用 brew services start redis-2.6 启动服务,其他服务同理Docker 相关将本地docker镜像导出保存到指定压缩文件docker save -o ~/Documents/my-project.tar my-project:v3将压缩文件的docker镜像导入到本地镜像仓库docker load --input ~/Documents/my-project.tar镜像上传到在线镜像源先将本地镜像生成一个包含完整镜像源地址的tag,docker tag my-project:v3 xxx.dockerhub.com/namespace/my-project:v3然后推送这个tagdocker push xxx.dockerhub.com/namespace/my-project:v3
2023年12月21日
51 阅读
0 评论
1 点赞
2022-03-31
使用docker搭建一个简单的nginx服务
操作步骤1、在任意目录位置创建Dockerfile 文件,输入如下内容FROM ubuntu/nginx COPY ./index.html /var/www/html/index.html CMD ["nginx", "-g", "deamon off;"]2、 在当前目录新建一个html文件作为静态页面3、 在当前目录执行 docker build -t test:v0.1 . 等待构建完成4、 执行docker images 查看镜像是否构建成功5、 执行docker run -d -p 8082:80 test:v0.16、 在浏览器访问 127.0.0.1:8082 验证是否能访问到上面新建的那个html内容涉及到的内容解释1、 Dockerfile 文件中a、 FROM 指定构建的基础镜像 b、 COPY 将当前空间(Dockerfile所在目录)的文件拷贝到镜像内容中,此处拷贝的是nginx的默认的静态页面地址 c、 CMD 指定执行docker run 指令时默认执行的命令,这里启动nginx2、 Docker 命令a、 docker build -t 指定镜像的tag信息,后续使用镜像的时候讲作为name使用 b、 docker run -d 表示在后台运行docker c、 docker run -p 指定端口映射,这里表示外部端口 8082 映射到当前启动后的容器(container)的80 端口(也就是上面启动的nginx)
2022年03月31日
396 阅读
0 评论
0 点赞
2022-02-27
express框架下获取用户真实ip地址
1、配置nginx在http,或者 server 或者 location 中加入如下配置proxy_set_header Host $proxy_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr;2、nodejs 获取方法var ip = req.headers['x-real-ip'] || req.connection.remoteAddress;
2022年02月27日
371 阅读
0 评论
0 点赞
2021-08-11
Nginx限制IP访问频率
最近网站经常出现假死的状态,重启nginx可恢复,但是短时间后又出现,经过排查日志发现,有一个 IP 存在过度频繁请求的情况,十分钟左右的时间请求了12000次左右,导致了服务器资源无法释放,所以产生了假死现象。应急处理:在服务器安全组策略里禁止这个 ip 地址入站一开始想通过程序控制访问频率,但是发现不能从根本解决问题,因为程序还是得要响应用户请求,所以想到了通过nginx来控制,于是在网上找到了如下解决方案。主要用到了nginx的ngx_http_limit_conn_module和ngx_http_limit_req_module两个配置:ngx_http_limit_conn_module:限制并发连接数;ngx_http_limit_req_module:限制一段时间内同一IP的访问频率;首先,我们为了防止别人来攻击,或者访问量异常过高导致服务器崩掉,就需限制访问量,如果是一瞬间的并发访问,那么我们就需要限制一秒之内的并发连接数,此时就需要用到第一个配置http { limit_conn_zone $binary_remote_addr zone=addr:10m; #定义一个名为addr的limit_req_zone用来存储session,大小是10M内存, #以$binary_remote_addr 为key #nginx 1.18以后用limit_conn_zone替换了limit_conn, #且只能放在http{}代码段. ... server { ... location / { limit_conn addr 10; #连接数限制 #设置给定键值的共享内存区域和允许的最大连接数。超出此限制时,服务器将返回503(服务临时不可用)错误. #如果区域存储空间不足,服务器将返回503(服务临时不可用)错误 } } }上面的配置能达到的效果就是,一瞬间访问的时候,只会有10个IP能得到响应,后面的IP直接就返回503状态。其次,如果一个IP能访问到服务器,那么它如果疯狂的调用接口,如:页面上写个for循环一直刷请求,且不说数据会错乱,最后可能导致将服务器的带宽耗尽,从而导致服务器假死崩溃,此时就需要用到第二个配置http{ # ...其他配置 #定义一个名为allips的limit_req_zone用来存储session,大小是10M内存, #以$binary_remote_addr 为key,限制平均每秒的请求为20个, #1M能存储16000个状态,rete的值必须为整数, #如果限制两秒钟一个请求,可以设置成30r/m limit_req_zone $binary_remote_addr zone=allips:10m rate=20r/s; ... server{ ... location / { ... #限制每ip每秒不超过20个请求,漏桶数burst为5 #brust的意思就是,如果第1秒、2,3,4秒请求为19个, #第5秒的请求为25个是被允许的。 #但是如果你第1秒就25个请求,第2秒超过20的请求返回503错误。 #nodelay,如果不设置该选项,严格使用平均速率限制请求数, #第1秒25个请求时,5个请求放到第2秒执行, #设置nodelay,25个请求将在第1秒执行。 limit_req zone=allips burst=5 nodelay; ... } ... } ... }此时能达到的效果,同一个ip在一秒钟只能获得20个访问,超过20个请求,后面的也是直接返回503。上面的两个配置加在一起就可以做到:一秒只有10个连接,每个连接只能发送20个请求。注意:对request的访问限制,大家一定要注意数量的配置,否则一不小心就会 503(ERR_ABORTED 503 (Service Temporarily Unavailable))
2021年08月11日
514 阅读
0 评论
0 点赞
2021-08-11
Nginx 配置按日期单独生成日志文件
1、http 配置增加下面代码定义当前日期的变量# ... http { # ... map $time_iso8601 $logdate { '~^(?<ymd>\d{4}-\d{2}-\d{2})' $ymd; default 'date-not-found'; } }2、对应站点的server里增加日志文件位置配置server { # ... location / { proxy_pass http://127.0.0.1:3000; limit_req zone=allips burst=20 nodelay; #limit_conn one 40; #连接数限制 #带宽限制,对单个连接限数,如果一个ip两个连接,就是500x2k limit_rate 500k; } access_log /usr/lcoal/nginx/logs/xxx.com/access-$logdate.log; error_log /usr/lcoal/nginx/logs/xxx.com/error.log; }注:日志文件目录一定要有读写权限
2021年08月11日
440 阅读
0 评论
0 点赞