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

目录
相关文章
|
5月前
|
域名解析 网络协议 安全
在Linux中,想在命令行下访问某个网站,并且该网站域名还没有解析,如何做?
在Linux中,想在命令行下访问某个网站,并且该网站域名还没有解析,如何做?
|
5月前
|
安全 Linux 应用服务中间件
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
|
5月前
|
JavaScript Linux 应用服务中间件
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
【Azure 应用服务】FTP 部署 Vue 生成的静态文件至 Linux App Service 后,访问App Service URL依旧显示Azure默认页面问题
|
5月前
|
机器学习/深度学习 Ubuntu Linux
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
在Linux中,如何按照该要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?
|
4月前
|
Linux 网络虚拟化 Windows
ccproxy windows上用的代理软件(类似linux系统上的squid)
ccproxy windows上用的代理软件(类似linux系统上的squid)
|
5月前
|
JavaScript Linux 容器
【Azure 应用服务】NodeJS项目部署在App Service For Linux环境中,部署完成后应用无法访问
【Azure 应用服务】NodeJS项目部署在App Service For Linux环境中,部署完成后应用无法访问
|
5月前
|
监控 网络协议 Linux
在Linux中,如何使用 tcpdump 嗅探 80 端口的访问看看谁最⾼?
在Linux中,如何使用 tcpdump 嗅探 80 端口的访问看看谁最⾼?
|
5月前
|
网络协议 Linux
在Linux中,如何使用iptables 写⼀条规则?把来源IP为192.168.1.101访问本机80端口的包直接拒绝.
在Linux中,如何使用iptables 写⼀条规则?把来源IP为192.168.1.101访问本机80端口的包直接拒绝.
|
20天前
|
监控 JavaScript 测试技术
postman接口测试工具详解
Postman是一个功能强大且易于使用的API测试工具。通过详细的介绍和实际示例,本文展示了Postman在API测试中的各种应用。无论是简单的请求发送,还是复杂的自动化测试和持续集成,Postman都提供了丰富的功能来满足用户的需求。希望本文能帮助您更好地理解和使用Postman,提高API测试的效率和质量。
72 11
|
2月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
71 3

热门文章

最新文章