Mac/Linux Curl代理访问测试网站方法

简介: Mac/Linux Curl代理访问测试网站方法

HTTP协议测试访问

curl -I  -x 140.205.32.8:80 "http://www.aliyun.com" 

Jietu20171216_221446

HTTPS协议测试访问

curl -I  -s  -k 'https://140.205.32.8/' -H 'Host:www.aliyun.com'

Jietu20171216_221418

解释说明

使用过程中,调整期望的IP以及域名。比如:其他测试通过代理访问http://blog.csdn.net/ 那命令如下:

curl -I  -x x.x.x.x:80 "http://blog.csdn.net" 

对应的IP,调整为对应的代理服务器的IP。

扩展使用

#循环100次使用代理访问https://www.aliyun.com/,返回Response Headers
for i in {1..100};do curl -I  -s  -k 'https://140.205.32.8/' -H 'Host:www.aliyun.com'; done
#通过代理服务器访问,查看网站内容
curl  -s  -k 'https://140.205.32.8/' -H 'Host:www.aliyun.com'

相关CURL参数说明

-s/--silent                                    #静音模式。不输出任何东西
-I/--head                                      #只显示文档信息
-k/--insecure                                  #允许不使用证书到SSL站点
-x/--proxy <host[:port]>                       #在给定的端口上使用HTTP代理

综上编写了一个简单的脚本:
准备工作:

cat ~/.bash_profile
alias web_Proxy='bash /root/Proxy/Proxy.sh'

脚本内容

#!/bin/bash

http(){
    curl -I  -x $2 "http://"$1
}
https(){
    curl -I    -k 'https://'$2 -H 'Host:'$1
}

if [[ $1 == 'http' ]];then
    if [[ ! -n $4 ]];then
        http $2 $3
    else
        for ((i=0;i<$4;i++))
         do
             date;
             http $2 $3;

         done
    fi
elif [[ $1 == 'https' ]]; then
#    https $2 $3
    if [[ ! -n $4 ]];then
                  https $2 $3
          else
                  for ((i=0;i<$4;i++))
                   do
                       date;
                       https $2 $3;

                   done
          fi


else
    echo -e 'Usage: \nweb_Proxy http www.baidu.com 8.8.8.8:80 10 \nweb_Proxy 协议 域名 地址:端口 循环访问次数'
fi

使用示例:

Mac-Pro:~ Test$ web_Proxy http www.aliyun.com 140.205.172.20:80 2
2018年 2月19日 星期一 00时07分20秒 CST
HTTP/1.1 301 Moved Permanently
Date: Sun, 18 Feb 2018 16:07:20 GMT
Content-Type: text/html
Content-Length: 286
Connection: keep-alive
Location: https://www.aliyun.com/
Server: Tengine/Aserver
EagleEye-TraceId: 0b83df9215189700406686721e7a8c
Timing-Allow-Origin: *

2018年 2月19日 星期一 00时07分20秒 CST
HTTP/1.1 301 Moved Permanently
Date: Sun, 18 Feb 2018 16:07:20 GMT
Content-Type: text/html
Content-Length: 286
Connection: keep-alive
Location: https://www.aliyun.com/
Server: Tengine/Aserver
EagleEye-TraceId: 0b83a4e715189700407331684e84d1
Timing-Allow-Origin: *

更多内容见Man Curl

目录
相关文章
|
3天前
|
Linux
linux不同场景下修改文件名的五种方法
linux不同场景下修改文件名的五种方法
6 1
|
5天前
|
安全 Linux 测试技术
Kali Linux渗透测试教程:解锁黑客之门
Kali Linux渗透测试教程:解锁黑客之门
|
5天前
|
Linux 芯片
一篇文章讲明白Linux下控制GPIO的三种方法
一篇文章讲明白Linux下控制GPIO的三种方法
16 3
|
5天前
|
Linux 测试技术 开发工具
CentOS Linux 8使用阿里源(安装jdk11、git测试)
CentOS Linux 8使用阿里源(安装jdk11、git测试)
17 1
|
3天前
|
Java 编译器 Linux
程序技术好文:详解Linux安装GCC方法
程序技术好文:详解Linux安装GCC方法
|
12天前
|
JSON Java Maven
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
使用`MockMvc`来测试带有单个和多个请求参数的`GET`和`POST`接口
23 3
|
2月前
|
NoSQL 安全 测试技术
接口测试用例设计的关键步骤与技巧解析
该文介绍了接口测试的设计和实施,包括测试流程、质量目标和用例设计方法。接口测试在需求分析后进行,关注功能、性能、安全等六项质量目标。流程包括网络监听(如TcpDump, WireShark)和代理工具(Charles, BurpSuite, mitmproxy, Fiddler, AnyProxy)。设计用例时,需考虑基本功能流程、输入域测试(如边界值、特殊字符、参数类型、组合参数、幂等性)、线程安全(并发和分布式测试)以及故障注入。接口测试用例要素包括模块、标题、优先级、前置条件、请求方法等。文章强调了保证接口的幂等性和系统健壮性的测试重要性。
58 5
|
5天前
|
存储 JSON 测试技术
软件测试之 接口测试 Postman使用(下)
软件测试之 接口测试 Postman使用(下)
14 2
|
5天前
|
测试技术 数据格式
软件测试之 接口测试 Postman使用(上)
软件测试之 接口测试 Postman使用(上)
13 1
|
12天前
|
监控 前端开发 测试技术
postman接口测试工具详解
postman接口测试工具详解
42 7