在linux系统下使用curl自定义http头的方法 【百科全说】-凯发k8官方旗舰厅

腾讯视频/爱奇艺/优酷/外卖 充值4折起

curl是一个强大的命令行工具,它可以通过网络将信息传递给服务器或者从服务器获取数据。他支持很多的传输协议,尤其是http/https以及其他诸如ftp/ftps, rtsp, pop3/pop3s, scp, imap/imaps协议等。当你使用curl向一个url发送http请求的时候,它会使用一个默认只包含必要的头部字段(如:user-agent, host, and accept)的http头。



在一些个例中,或许你想要在一个http请求中覆盖掉默认的http头或者添加一个新的自定义头部字段。例如,你或许想要重写“host”字段来测试一个负载均衡,或者通过重写"user-agent"字符串来假冒特定浏览器以解决一些访问限制的问题。

为了解决所有这些问题,curl提供了一个简单的方法来完全控制传出http请求的http头。你需要的这个参数是“-h” 或者 “--header”。

为了定义多个http头部字段,"-h"选项可以在curl命令中被多次指定。

例如:以下命令设置了3个http头部字段。也就是说,重写了“host”字段,并且添加了两个字段("accept-language" 和 "cookie")

代码如下:

$ curl -h 'host: 157.166.226.25' -h 'accept-language: es' -h 'cookie: id=1234' http://cnn.com



对于"user-agent", "cookie", "host"这类标准的http头部字段,通常会有另外一种设置方法。curl命令提供了特定的选项来对这些头部字段进行设置:

-a (or --user-agent): 设置 "user-agent" 字段.

-b (or --cookie): 设置 "cookie" 字段.

-e (or --referer): 设置 "referer" 字段.

例如,以下两个命令是等效的。这两个命令同样都对http头的"user-agent"字符串进行了更改。

代码如下:

$ curl -h "user-agent: my browser" http://cnn.com

$ curl -a "my browser" http://cnn.com

wget是另外一个类似于curl,可以用来获取url的命令行工具。并且wget也一样允许你使用一个自定义的http头。

09/13 21:55
太多的文件导致我们无法去定位一个函数的实现或者一个宏定义的位置。显然对于源码的阅读和个人的学习都是非常不利的。多么希望有一个软件能够输入命令就能够精确的定位函数的位置。是的,现在有这么一个工具:ctags,它需要和vim编辑器配合使用,让源码阅读可以更加轻松。 什么是ctags? ctags(generate tag files for source code)是vim下方便代码阅读的工具。尽管ctags也可以支持其它编辑器,但是它正式支持的只有vim。并且vim中已经默认安装了ctags,它可

如何在linux系统下修改debian wheezy默认配置的方法

09/24 19:01
debian wheezy修改默认配置 环境:thinkpad t420s debian wheezy 1,thinkpad禁用触摸板(反正我是一直不习惯用触摸板)在 /etc/profile 配置文件尾部添加 synclient touchpadoff=1 2,thinkpad trackpoint(小红帽)启用中键滚动,并调整速度与灵敏度编写一个小脚本添加到开机启动项里,脚本内容如下: [plain] #!/bin/bash echo -n 120 >
05/01 02:34
在web开发过程中,经常需要设定一些定期执行的任务,比如商品定时上下架.我们以php文件为例,讲解linux下的计划任务. 方法/步骤 1.打开linux系统命令行界面. 在命令行界面中输入如下命令:which php,回车. 1.记住上一步的php路径,继续在命令行下输入:crontab -e,回车,按下“i”键进入vi编辑器的编辑模式,在当前模式下输入如下命令: 10,40,50 * * * * /usr/bin/php /opt/lampp/htdocs/wechat/xjtest-web
09/01 13:01
一、下载ies4linux 去 http://www.tatanka.com.br/ies4linux/page/installation 下载ies4linux的文件包(目前版本为2.99),然后解压缩。注意:这个网站被大陆和谐了,需要跳墙。至于怎么跳,诸位就各显神通了:-) 一些发行版的软件源里也会有ies4linux的包,比如ubuntu、arch。这时就只要apt-get或者pacman一下就行了。实在没有就baidu、google,肯定能下载到。 二、安装ie6 运行软件包里的安装脚本
10/05 02:31
现在手机用户非常庞大,针对手机用户的流量不得不考虑,但手机网络带宽较小,怎么将互联网上的图片压缩是个难题,在windows上容易,有很多软件,但在linux上有没有办法呢? 经过多次的寻找,还是找到了些方法,这里分享下: 一个比较好用命令行下可以使用的 强大的免费图片工具 imagemagick centos系统的安装使用方法: yum install imagemagick 再输入y确认即可安装完成 接下来调用 系统命令 复制代码 代码如下: #include

linux系统下修改最大传输单元mtu的方法

12/19 09:54
最大传输单元(maximum transmission unit,mtu)是指一种通信协议的某一层上面所能通过的最大数据报大小(以字节为单位).最大传输单元这个参数通常与通信接口有关(网络接口卡.串口等). 因特网协议允许ip分片,这样就可以将数据报分成足够小的片段以通过那些最大传输单元小于该数据报原始大小的链路了.这一分片过程发生在ip层(osi模型的第三层,即网络层),它使用的是将分组发送到链路上的网络接口的最大传输单元的值.原始分组的分片都被加上了标记,这样目的主机的ip层就能将分组重组成
09/03 05:00
在linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了: $ ./test.sh & [1] 17208 $ jobs -l [1] 17208 running ./test.sh & 对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl z暂停已经运行的进程,然后使用bg命令将停止的作业放到后台运行: $ ./test.sh [1] stopped ./test.sh $ bg %1 [1
08/10 04:21
选择一个一劳永逸的方法,就是修改/etc/下的fstab文件,我的fstab内容如下: /dev/hda9 / ext2 defaults 1 1 /dev/hda8 /boot ext2 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hda10 swap swap defaults 0 0 /dev/c

linux系统下对硬盘分区进行扩容的方法总结

12/30 18:42
硬盘快满了,加硬盘扩容,不管是独立的服务器,还是云空间新买的硬盘,扩容方式一样.下面以阿里vps为例,详细说一下,挂载硬盘扩容的2种方法. 阿里vps,个人觉得有以下二个方面需要改进 1,默认不是lvm,所以系统盘/dev/xvda1是不能扩容的,所以如果有大数据的东西,一开始就要考虑到扩容的问题.数据量越大,操作风险越大. 2,不能实现无缝扩容,也就是说,在后台扩容一下,不用登录到vps,进行调整.非专业人士,扩容困难 一,不采用lvm,直接将硬盘挂载到目录 1,查看硬盘分区情况 代码如下:
网站地图