`
qq362228416
  • 浏览: 34358 次
社区版块
存档分类
最新评论
文章列表
为了服务器安全,防止被入侵,除了加强密码之外,还可以监控服务器的登陆情况 把登陆日志记下来,当然系统也会有记录,但不排除被人删掉,所以把数据发送到另外一台服务器比较保险,避免被删除 在linux下面很简单,只需要在/etc/ssh/目录下面创建一个sshrc的文件,然后给它执行权限,那么在有人通过ssh远程登录这台服务器的时候,这段脚本就会被执行 代码如下: #!/bin/bash #获取登录者的用户名 user=$USER #获取登录者的IP地址 ip=${SSH_CLIENT%% *} #获取登录的时间 time=$(date +%F%t%k:%M) #服务器的IP地址 ser ...
出于安全原因,我们需要监控服务器上面的文件修改情况 这里用到一个很有用的工具就是inotifywait 安装命令 $ apt-get install inotify-tools 安装完之后,写一个脚本监控我们想要监控的目录,并且把监控到的内容输出到日志文件 watch.sh 脚本 #!/bin/bash inotifywait -rme create,modify,move,delete /usr/local/tomcat/webapps/ -o /logs/w.log 我这里主要监控文件夹下面的文件创建、修改、移动、删除事件,然后把日志输出到文件w.log 启动命令 n ...
公司有一个项目是php的,为了统一开发、测试环境,想要用docker构建了一个php-fpm镜像,经过一番折腾,镜像构建完成。 此镜像为基于php:5.6.28-fpm 主要是安装了一些常用的拓展,如libpng、libjpeg、gd、mysql,还安装了xdebug,用于调试 可在linux/win10上使用 启动命令: docker run -it --rm --name php -p 9000:9000 -v d:\work\www:/www -v d:\work\www\docker\php.ini:/usr/local/etc/php/php.ini 362228416/p ...
前段时间,开发了一个供外部调用的api,领导说要限流,请求单个IP,每秒50读次,写10次 万能的nginx,几行配置搞定 # 先定义好规则,需要写在server外面 limit_req_zone $binary_remote_addr $uri zone=api_write:20m rate=10r/s; # 写 limit_req_zone $binary_remote_addr $uri zone=api_read:20m rate=50r/s; # 读 # 把需要限速的接口应用上上面的规则 # 写10/秒 location = /api/v1/trade { ...
上一次上线只是简单的把手机端的流量切换手机端的首页,有点粗糙,现在需要把电脑端相应的页面切换到电脑端的页面,直接用nginx自带的rewrite不太好做,所以用lua做 下面开始代码 nginx 配置 location / { rewrite_by_lua_file lua/mobile.lua; ... # 反向代理 } mobile.lua代码 -- 手机访问重定向到移动版 local agent = ngx.var.http_user_agent if agent ~= nil then local m, ret = ngx.re.match(a ...
最近有一个微信端要上,需要凌晨12点上线,不可能让我等到12点切流量吧,于是早早的配置好,回家睡觉 很简单,主要在nginx这层做点处理,就行了,废话不多说,直接代码 location / { access_by_lua_block { if ngx.time() >= 1480521600 then local user_agent = ngx.var.http_user_agent if user_agent ~= nil then local m, ret = ngx.re. ...
最近老是有用户说,页面打开慢,但是自己打开又很快,所以想统计一下用户打开网站的时间,当然这个统计有点粗糙,但是也能说明一点问题 实现原理很简单,就是在header里面保存一下用js保存一下当前时间,然后在body结束前面再加一段js,加载耗时(ms) = 用当前时间 - header里面的时间,就得到了这个页面加载大概需要的时间,主要是页面内容、CSS、js这些加载所花的时间,ajax这里不统计,知道原理之后就简单了 这是header里面加的 <script type="text/javascript">var loadTime = new Date(). ...
废话不多说,直接代码。。。 内网: $ ssh -R -N -f 10020:0.0.0.0:10022 root@110.110.110.110 外网 $ ssh -p 10020 localhost $ # 尽情YY 说明: 11020 是远程连接到本机的端口,10022是本机开放的端口,root@110.110.110.110 这段其实就是 ssh 连接的服务器跟用户名,大致原理就是通过 ssh 创建一条隧道,并将远程服务器的10020端口转发到本机的10022端口,实现穿透效果,简单实用 <script type="text/java ...
从去年开始,构建工具就从maven转向gradle了,servlet容器也从tomcat转向了jetty,直接使用内嵌的方式运行,然后用gradle打包成应用程序,直接启动bin目录下的运行文件即可运行,简单快捷。 首先说明一点,就是这种方式只适用于纯api项目,也就是无jsp,不然打包成jar会有问题。 项目框架 spring mvc + mybatis,数据库用mysql + redis,spring mvc 跟 mybatis 配置我就不多说了,主要介绍一下jetty的吧。 import com.alibaba.druid.support.http.WebStatFilter; ...
背景 随着react的开源,facebook相继开源了很多相关的项目,这些项目在他们内部已经使用了多年,其中引起我注意的就是本次讨论的是graphql,目前官方只有nodejs版,由于很多公司的后台技术栈都是java,所以便有了graphql的java版实现,在github上可以找到,废话不多说,直接看代码吧,具体介绍还是去看官网吧,不然就跑题了。 GraphQLSchema Schema相当于一个数据库,它有很多GraphQLFieldDefinition组成,Field相当于数据库表/视图,每个表/视图又由名称、查询参数、数据结构、数据组成. 1) 先定义一个数据结构(Grap ...
使用docker安装gitlab 1、在mysql中创建一个用户 CREATE USER 'gitlab'@'%.%.%.%' IDENTIFIED BY '***gitlab***'; CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`; GRANT ALL PRIVILEGES ON `gitlabhq_production`.* TO 'gitlab'@'%.%.%.%'; 2、启动一个redis服务,不能带密 ...
React-Native 开发的App, 所有组件ios & android 共用, 共享一份代码 包括一些自定义的组件, 如NavigationBar, TabBar, SegmentedControl, 使用字体图标, 具有一定的参考意义 主要专注于布局, 共享组件/代码, 以及一些React自带的组件, 如: ScrollView, TouchableOpacity, View, Text, ListView, Image, WebView 和 Api的使用, 这并不是一个完整版, 只是业余时间, 对web版的一个native化, 特共享出来, 供各位参考. 代码在git ...
做负载均衡的时候,往往会遇到需要session同步的问题,方案很多,但是都有各种的缺点,最近发现spring-session项目,原理是将session保存到redis,来实现session同步,好处是不管增加多少个tomcat,都没有问题,做负载的时候,也不用考虑session问题,而且配置灰常简单,因为我们的项目就是用redis来缓存数据的,只需要添加两行配置即可 1、添加spring-session <dependency> <groupId>org.springframework.session</groupId> <a ...
1、很简单,直接用系统的定时任务,先写好脚本,然后定时调用就行了,备份数据库直接用的mysqldump命令,具体就不写了,然后运行命令 $ crontab -e 2、在最下面添加定时任务执行的时间即可,改完直接保存退出,立即生效 # 每天凌晨一点运行 0 1 * * * /task/backdb.sh # 每十分钟执行一次备份 */10 * * * * /task/backdb.sh # 每三十分钟执行一次备份 */30 * * * * /task/backdb.sh <script type="text/javascript"> ...
1、首先第一步,肯定是下载,根据情况选择要下载的 地址在这里 https://github.com/Qihoo360/Atlas/releases 我下载的是Atlas-2.2-debian7.0-x86_64.deb 安装 $ dpkg -i Atlas-2.2-debian7.0-x86_64.deb 安装好之后在 /usr/local/mysql-proxy 目录下,其实这货是基于mysql-proxy开发的,添加了一些特性,安装的时候会有一些坑,启动不了,缺少lib,然后我有直接下载了官方的mysql-proxy,这里面包含了这货缺少的lib,可以直接复制到它的lib下面, ...
Global site tag (gtag.js) - Google Analytics