后端 Python学习记录01 使用字典模拟Switch…Case
今天学习Python,期间需要使用到Switch…Case,下意识的写了一下,发现竟然不支持,在网上搜索了一下找到了替代的办法使用字典来模拟Switch…Case print(‘模拟switc’) def taskForSunday(): print(“今天休息”) def taskForRest(): print(“今天休息”) def taskForChinese(): print(“今天上语文课”) def taskForMath(): print(“今天上数学课”) def taskForEnglish(): print(“今天上英语课”) def taskForDefault(): print(“输入错误啦。。。。”) switchDic = {“Sunday”:taskForRest, “Monday”:taskForChinese, “Tuesday”:taskForMath, “Wednesday”:taskForEnglish, “Tursday”:taskForEnglish, “Friday”:taskForEnglish, “Saturday”:task…
服务器 Nginx 简单负载均衡使用记录
前提: 我们用thinkphp做了一个项目,需要做个简单的负载均衡,用Nginx做,为了session可以节点之间通用,使用了一个独立的Redis服务器做session存储 下面是Nginx的配置文件 http { include mime.types; default_type application/octet-stream; # 服务器组 名称 test-server upstream test-server { # ip_hash 每个请求都根据访问ip的hash结果分配,经过这样的处理,每个访客固定访问一个后端服务,如下配置(ip_hash可以和weight配合使用) # least_conn 将请求分配到连接数最少的服务上 # fair 按后端服务器的响应时间来分配请求,响应时间短的优先分配。Nginx本身是不支持fair的,如果需要使用这种调度算法,必须下载Nginx的upstream_fair模块 # url_hash 按访问URL的hash结果来分配请求,使每个URL定向到同一个后端服务器,后端服务器为缓存时比较适用。另外,在upstream中加入hash语句后,se…
PHP PHP获取axiosjs提交的application/json类型的数据的方法整合
普通情况下,application/json类型的数据无法直接使用$_POST或者$_REQUEST获取到,需要用到file_get_contents(‘php://input’),所以在此封装了一个方法,方便读取 function getPostData() { if (empty($_POST) && false !== strpos($_SERVER[“CONTENT_TYPE”], ‘application/json’)) { $content = file_get_contents(‘php://input’); $post = json_decode($content, true); } else { $post = $_POST; } return $post; }
前端 vuejs设置代理
提醒:本文最后更新于2021-05-19 22:28,文中所关联的信息可能已发生改变,请知悉! 1、介绍 这里的vue代理是 vue静态服务器做代理。使用的是 http-proxy-middleware 这个模块(这个模块相当于是node.js的一个插件)。 2、实际代码 //vue-cli3.0 里面的 vue.config.js做配置 devServer: { proxy: { '/rng': { //这里最好有一个 / target: 'http://45.105.124.130:8081', // 后台接口域名 ws: true, //如果要代理 websockets,配置这个参数 secure: false, // 如果是https接口,需要配置这个参数 changeOrigin: true, //是否跨域 pathRewrite:{ '^/rng':'' } } } } 说明 我的 api='/rng' 我的请求地址${api}/xxxx/xxx,请求地址就为 '/…
PHP SMProxy 使用小记
下载最新发行版的 PHAR 文件,解压即用: https://github.com/louislivi/SMProxy/releases/latest 在Linux下面需要给 bin/SMProxy 执行权限。 win下不需要,win下需要下载swoole Windows版。 运行命令 SMProxy [ start | stop | restart | status | reload ] [ -c | –config <configuration_path> | –console | -f | –force ] SMProxy -h | –help SMProxy -v | –version Options: start 运行服务 stop 停止服务 restart 重启服务 status 查询服务运行状态 reload 平滑重启 -h –help 帮助 -v –version 查看当前服务版本 -c –config 设置配置项目录 –console 前台运行(SMProxy>=1.2.5) -f –force 强制执行(SM…
前端 在Postman中使用cookie (转)
有可能存在部分任务场景,部分api 必须登录后才能访问。如果使用postman 的话,还是非常简单的 1:如果直接访问api ,提交参数后,会提示未登录 2:解决方法,设置右上角的cookie 3:在弹出的窗口中,可以编辑cookie 4: 可以增加可修改cookie,一般登录相关的,修改sid 即可 添加格式如下,牵涉到登陆的一般cookie 名为sid,domain,为你的网站 sid=xxx; path=/; domain=.www.sina.com; 6:sid 可以登录浏览器,在审查元素中提取 7:然后再次提交
服务器 docker容器中安装vim
在使用docker容器时,docker默认没有安装vim,敲vim命令时会有如下提示:bash: vim:command not found 此时就需要安装vim,如果直接敲apt-get install vim命令则会有如下提示:unable to locate package vim 我们需要先敲入apt-get update命令,这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。 然后即可使用apt-get install vim安装vim。
服务器 docker 在Windows中,映射时,如果碰到错误
错误 docker: Error response from daemon: status code not OK but 500: {“Message”:”Unhandled exception: Drive has not been shared”}. 有可能是没有给权限的,可以尝试
服务器 docker 在 Windows 中 docker run 运行时参数 -v 映射win系统磁盘时的写法
/e/wwwroot/test 对应win 的路径 e:\wwwroot\test
PHP docker环境下使用phpstorm进行xdebug调试代码填坑记录
首先,修改 php.ini 文件中的xdebug的配置 [XDebug] ;开启xdebug xdebug.enable=1 ;开启远程调试 xdebug.remote_enable=1 ;通讯key xdebug.idekey=PHPSTORM ;宿主机ip (docker從18.03開始建議連接到特殊DNS名稱host.docker.internal) xdebug.remote_host=host.docker.internal ;确定宿主机内此断口没有被占用 xdebug.remote_port=19000 ;开启远程连接回调,自动忽略 remote_host 设置,自动读取 $_SERVER[‘HTTP_X_FORWARDED_FOR’] 或者 $_SERVER[‘REMOTE_ADDR’] 变量 xdebug.remote_connect_back=1 配置phpstorm 如上图,phpstorm里面设置红框里面的端口保持和 php.ini 文件的配置一致 如上图,点击编辑debug配置,如果没有的话添加一个 如上图,添加一个debug配置,如果没有Server 则点击 …
PHP Laravel 中使用 内网转发导致HTTP_HOST不正确的临时处理
在Laravel中使用内网转发时,某些情况下转发HTTP_HOST不正确,会导致使用 URL::asset、route等跟URL相关的方法生成带域名的URL不正确,临时处理办法 在入口文件(public/index.php)进行设置,比如: if (strpos($_SERVER[‘HTTP_HOST’], ‘xxxx.com’) !== false) { $_SERVER[‘HTTP_HOST’] = ‘xxxx.com’; }
前端 mescroll.js 插件使用时,其他元素无法滚动
当 isBounce 参数设置 为 false 或者 调用mescroll.setBounce(false) 时,会造成其他元素无法滚动, 分析: 初步判断当做了上面的设置后,会给元素添加 touchstart、touchmove、touchend 等事件来阻止拖动 解决: 首先想到是修改源码,去掉某些元素,上面事件的处理,可能比较懒,源码看着看着就累了,想着官方是否有解决办法呢,于是在官网上找到解决办法,在需要拖动元素上面加一个class即可解决 可选class :mescroll-touch,mescroll-touch-x,mescroll-touch-y 分别是全向拖动、左右拖动、上下拖动 选择自己合适的加到元素上即可
服务器 宝塔 运行报 open_basedir restriction in effect 错误,可尝试如下操作
去掉下图红色框内打钩的,防跨站攻击
服务器 upupw 环境使用时访问目录或者文件报denied by request access control错误
upupw 环境使用时访问目录或者文件报denied by request access control错误时,可以尝试 打开 web 管理页面,一般情况下,命令 为 09 ,输入命令后会打开一个网页,让你输入账号和密码,默认账号和密码都是 upupw,正确打开后 在《请求控制》里面找到 禁止目录执行的规则 点击《修改》链接,然后 目标 选继续 ,然后提交即可,如下图