shell下,可以通过 “ls -l /usr/share/vim/vim70/colors/.”查看本机都安装了哪些主题,比如本人开发机,有如下主题:

blue.vim

darkblue.vim

default.vim

delek.vim

desert.vim

elflord.vim

evening.vim

koehler.vim

morning.vim

murphy.vim

pablo.vim

peachpuff.vim

ron.vim

shine.vim

slate.vim

torte.vim

zellner.vim

基本上是挨个试了一次,发现peachpuff是对php支持最好的,效果比较让人满意。

编辑~/.vimrc,添加一行

每次vim打开就是这个主题了。用起来比较舒服,配图一张:

阅读全文

HTTP 400 错误 – 请求无效 (Bad request)

介绍—http 400错误.

您的Web服务器认为客户端发送的数据流 (例如您的浏览器或我们的 CheckUpDown 机器人 ) 是 ‘ 畸形的’,即没有完全遵守 HTTP 协议。 因此您的 Web 服务器无法理解和处理该请求。

该错误几乎总是意味着客户端系统以及 / 或者您的Web服务器编程失败。

HTTP 循环中的 400 错误

任何客户端 ( 例如您的浏览器或我们的 CheckUpDown 机器人 ) ,都需要通过以下循环:

从您站点的 IP 名称 ( 即您站点的网址-URL, 不带起始的 ‘http://’) 获得一个 IP 地址。这个对应关系 ( 即由 IP 名称向 IP 地址转换的对应关系 ) 由域名服务器 (DNSs) 提供。

打开一个 IP 套接字 (socket) 连接到该 IP 地址。

通过该套接字写 HTTP 数据流。

从您的Web服务器接受响应的 HTTP 数据流。该数据流包括状态编码, 其值取决于 HTTP 协议 。 解析该数据流得到 状态编码和其他有用信息。

该错误在以上所述的最后一步生成,即当客户端收到 HTTP 状态编码并识别其为 ‘ 400’ 时

解决 400 错误 – 一般方法

在客户端或是Web服务器,或者两端都存在一个低层程序漏洞 (bug) 。 如果您无法进入这些系统的源程序, 您唯一能做的是把该问题提交给开发这些系统的公司的技术支持人员。

阅读全文

Linux下DIG命令的基本用法

dig命令是一个用于询问 DNS 域名服务器的灵活的工具。

它执行 DNS 搜索,显示从受请求的域名服务器返回的答复。

多数 DNS 管理 员利用 dig 作为 DNS 问题的故障诊断,因为它灵活性好、易用、输出清晰。

在 unix 和 linux 下,建议大家使用 dig 命令来代替 nslookup。 dig 命令的功能比 nslookup 强大很多,不像 nslookkup 还得 set 来 set 去的,怪麻烦的。

下面是 dig 的一些比较常用的命令:

  # dig 最基本的用法

  dig @server sina.com.cn.

阅读全文

在使用终端时,由于经常需要切换到其它机器,导致不清楚现在到底在哪台机器,所以希望能在命令行处显示本机IP。

只要做如下处理即可:

编辑/home/username/.bashrc, 即~/.bashrc,加入以下一行。

显示效果:

阅读全文

如果在crontab里有个定时任务设置为一分钟执行一次,但是它执行的时间可能会超过一分钟,此时crontab一分钟后会再次运行该脚本,这样就会出现冲突,如果程序不做容错处理,可能会导致出现一些问题。如果想解决这个问题,可以用Linux中的进程锁控制crontab执行的并发问题。

给一个shell脚本加锁,使用flock命令。

一般格式:

flock [-sxun][-w #] fd#

flock [-sxon][-w #] file [-c] command…

常用选项:

-s, –shared :获得一个共享的锁。

-x, –exclusive :获得一个独占的锁。

-u, –unlock :移除一个锁,通常是不需要的,脚本执行完后会自动丢弃锁。

-n, –nonblock :如果没有立即获得锁直接失败而不是等待。

-w, –timeout :如果没有立即获得锁就等待指定的时间。

-o, –close :在运行命令前关闭文件的描述符。用于如果命令产生子进程时会不受锁的管控。

-c, –command :在shell中运行一个单独的命令。

-h, –help :显示帮助。

-V, –version :显示版本。

阅读全文

我们在开发测试时,有时web服务器会绑定一个域名,但是因为dns是无法解析的,我们需要设置host文件去访问。 但是,如果我们是需要通过curl访问的话,无法访问该url的host主机。所以,需要通过指定host的方式来访问,具体访问方式如下: 如果是linux下的curl命令: 如果使用php的curl的话,使用curl_setopt设置一下CURLOPT_HTTPHEADER即可。 请参考以下函数使用:

阅读全文

作者的图片

DigDeeply

Technology Stack: Golang/PHP/Openresty, and so on…

Web Development Engineer

Beijing China